Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
19.06.2013 18:12:16 |
Kendels |
|
|
CSV Datei automatisch importieren |
19.06.2013 22:49:05 |
Gast54948 |
|
|
|
20.06.2013 10:51:36 |
Kendels |
|
|
|
20.06.2013 11:22:54 |
schokobons |
|
|
Von:
Gast54948 |
Datum:
19.06.2013 22:49:05 |
Views:
946 |
Rating:
|
Antwort:
|
Thema:
CSV Datei automatisch importieren |
Kann man z.B. so machen:
Option Explicit
Public Function ImportCSV() As Boolean
'?-------------------------------------------------------------------------------------
Const C_IMPORT_WORKSHEET_NAME As String = "ImportedData" 'Ziel-Arbeitsblatt
Const C_IMPORT_COLUMN As String = "A" 'Ziel-Spalte
'?-------------------------------------------------------------------------------------
Dim wks As Excel.Worksheet 'Ziel-Arbeitsblatt
Dim rng As Excel.Range 'Ziel-Bereich
Dim vntResult As Variant 'ausgewählte Datei(en)
Dim vntFileContent As Variant 'Dateiinhalt
Dim QNr As Integer 'zum Öffnen einer Datei benötigt
Dim i As Long 'um Dateien zu iterieren
Set wks = Worksheets(C_IMPORT_WORKSHEET_NAME)
vntResult = Application.GetOpenFilename( _
FileFilter:="CSV Dateien (*.csv), *.csv", _
Title:="CSV Dateien öffnen", _
MultiSelect:=True)
Call wks.UsedRange.Clear
If IsArray(vntResult) Then
For i = LBound(vntResult) To UBound(vntResult)
QNr = FreeFile
Open vntResult(i) For Input As #QNr
vntFileContent = Input(LOF(QNr), #QNr)
Close #QNr
Set rng = wks.Cells(wks.Rows.Count, C_IMPORT_COLUMN).End(xlUp)
If Not IsEmpty(rng.Value) Then Set rng = rng.Offset(1)
vntFileContent = Split(vntFileContent, vbNewLine)
vntFileContent = WorksheetFunction.Transpose(vntFileContent)
If vntFileContent(1, 1) <> "" Then
With rng
'Dateipfad
.Value = vntResult(i)
'Daten (von der Anzahl Eins abziehen, da letztes Element immer eine leere Zeichenfolge ist)
.Offset(1).Resize(UBound(vntFileContent) - 1).Value = vntFileContent
End With
End If
Next
Call wks.Columns(C_IMPORT_COLUMN).TextToColumns(Semicolon:=True)
End If
End Function
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
19.06.2013 18:12:16 |
Kendels |
|
|
CSV Datei automatisch importieren |
19.06.2013 22:49:05 |
Gast54948 |
|
|
|
20.06.2013 10:51:36 |
Kendels |
|
|
|
20.06.2013 11:22:54 |
schokobons |
|
|