• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opslaan en openen van TXT bestand via VBA

Status
Niet open voor verdere reacties.

RLorenzo

Gebruiker
Lid geworden
13 jan 2016
Berichten
16
Ik heb denk ik al iets maar bij het openen krijg ik steeds een foutmelding. Het gebeurt ook via de gegevens van een cell en daarnaast moet er een tweede cell de folder bepalen waar het bestand staat. Later kijk ik nog om het op te slaan in een bepaalde folder afhankelijk van een cell
Code:
Private Sub CommandButton2_Click()
Sheets("reservatielijst").Activate
Dim Path As String
Dim bestandsnaam As String
Dim bestand As String
Path = "C:\reservaties\22.txt"
bestandsnaam = Range("a1")
bestand = Path & bestandsnaam & ".txt"
Dim X As Double
Dim TXT As String
Open bestand For Input As #1
X = 0
Do While Not EOF(1)
Line Input #1, TXT
Cells(1, 1).Offset(X, 0) = TXT
X = X + 1
Loop


Close #1
Sheets("Main").Activate

End Sub
Bekijk bijlage test.xlsm

Dankjewel
 
Heb je ook een voorbeeld van zo'n tekstbestand?
 
Beter?
Code:
Path = "C:\reservaties\"
 
Gebruik:

Code:
sub M_snb()
   with thisworkbook
      .sheets.add , .sheets(.sheets.count),,"C:\reservaties\22.txt"
   end with
End Sub
 
Ik heb gevonden waarom hij een foutmelding geeft... het bestand bestaat niet :) De mogelijkheid bestaat waarschijnlijk wel dat hij gewoon dan gewoon niks doet? Nu heb ik wel nog het probleem dat hij deze tekst bestand in m'n main sheet opent en niet in m'n sheet Reservatielijst... :/ hoe moet ik dit aanpassen?

De code ziet er zo uit dus.
Code:
Private Sub CommandButton2_Click()
Dim Path As String
Dim bestandsnaam As String
Dim bestand As String
Path = "C:\reservaties\"
bestandsnaam = Range("a1")
bestand = Path & bestandsnaam & ".txt"
Dim X As Double
Dim TXT As String
Open bestand For Input As #1
Sheets("reservatielijst").Activate
X = 0
Do While Not EOF(1)
Line Input #1, TXT
Cells(1, 1).Offset(X, 0) = TXT
X = X + 1
Loop

Close #1
Sheets("Main").Activate

End Sub

Mvg Rosseel Lorenzo

P.S het tekstbestandje is momenteel gewoon naam 22.txt en dan staan er 5 lijntjes met TEST in gewoon om te testen
 
Code:
Private Sub CommandButton2_Click()
    Dim Path As String
    Dim bestandsnaam As String
    Dim bestand As String
        Path = "C:\reservaties\"
        bestandsnaam = Range("a1")
        bestand = Path & bestandsnaam & ".txt"
    Dim X As Double
    Dim TXT As String
        Open bestand For Input As #1
        X = 0
        Do While Not EOF(1)
            Line Input #1, TXT
            [COLOR="#FF0000"]Sheets("reservatielijst")[/COLOR].Cells(1, 1).Offset(X, 0) = TXT
            X = X + 1
        Loop
         Close #1
End Sub
vermijd .activate en .select door het te doen zoals in de rode text, zo heb je direct controle waar data terecht komt.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan