In Excel kun je op drie manieren gegevens importeren uit een tekstbestand:
Je kunt het tekstbestand openen in Excel of je kunt een tekstbestand importeren als een extern gegevensbereik.
Gegevens | Van tekst
Je kunt gegevens van Excel exporteren naar een tekstbestand met de opdracht Opslaan als.
De twee, meest gebruikte indelingen voor tekstbestanden zijn:
Tekstbestanden met scheidingstekens (TXT-bestanden), waarin de afzonderlijke tekstvelden zijn gescheiden door een tab (ASCII-tekencode 009).
Tekstbestanden met door een komma of puntkomma gescheiden waarden (CSV-bestanden), waarin de afzonderlijke tekstvelden zijn gescheiden door een komma (,) of puntkomma(;).
Je kunt voor TXT- en CSV-bestanden een ander scheidingsteken kiezen, wat nodig kan zijn als je de gegevens op jouw manier wilt importeren of exporteren.
Let op ! ! !
Je kunt maximaal 1.048.576 rijen en 16.384 kolommen importeren of exporteren.
Je kunt een CSV bestand ook inlezen middels een macro:
Sub Lees_CSV_Bestand()
Dim lngBestandNr As Long, lngRij As Long, varRij As Variant
Dim strTotaal As String, strRijen() As String, strVeld() As String
'Freefile geeft als resultaat een integer met het volgende
'bestandsnummer dat voor de instructie Open kan worden gebruikt.
lngBestandNr = FreeFile
'Open het juiste bestand. Let op de locatie.
Open "C:\temp\test.csv" For Binary As #lngBestandNr
'De Space functie geeft als resultaat een Tekenreeks
'die bestaat uit het opgegeven aantal spaties in LOF
'LOF betekent Lenght Of File
strTotaal = Space(LOF(lngBestandNr))
'Leest gegevens
Get #lngBestandNr, , strTotaal
'Sluiten
Close #lngBestandNr
'Let op ! ! !
'Gebruik Chr(10), Chr(13), vbCr, vbLf, vbCrLf, of vbNewLine
'Al naar gelang waarmee de rij eindigt. Rijen worden gesplitst
strRijen = Split(strTotaal, vbCr) '< < < hier bijv. vbCr
'Foutafhandeling uitschakelen
On Error Resume Next
For Each varRij In strRijen
'Let op ! ! ! de zogenaamde delimiter
'Kan zijn , of ; De velden worden gesplitst
strVeld = Split(varRij, ",") '< < < hier bijv. de komma
lngRij = lngRij + 1
'Gegevens wegschrijven naar cel
Cells(lngRij, "A").Resize(, UBound(strVeld) + 1) = strVeld
Next
'Foutafhandeling weer inschakelen
On Error GoTo 0
End SubTest bestand:
https://www.dropbox.com/s/wmtt5rn3kl1j4sw/test.csv