Microsoft Excel

Herbers Excel/VBA-Archiv

Open Textdatei for output | Herbers Excel-Forum


Betrifft: Open Textdatei for output von: Gerald
Geschrieben am: 25.02.2010 08:25:20

https://www.herber.de/bbs/user/68237.txt

Hallo Zusammen,

ich habe folgendes Problem bei der Erzeugung einer Textdatei aus Excel heraus.

Angenommen in der Zelle A1 steht folgendes
A
1 Hallo Welt

so kann durch folgendem Code



Sub Test()
    Dim strBla As String
    
    Open "c:\DATEI1.txt" For Output As #1
    strBla = Cells(1, 1)
    Print #1, strBla
    Close #1
End Sub

"Hallo Welt" in die Textdatei c:\Datei1.txt geschrieben werden.

Jetzt gibt es nicht nur einen Inhalt in der Zelle A1, sondern auch in A2 und A3.
A
1 Hallo Welt
2 Hallo Europa
3 Hallo Deutschland

Ist es möglich die Zellen A1 bis A3 zu markieren und den kompletten Inhalt auf einmal in eine Textdatei zu kopieren? Tatsächlich sind es bei mir nicht 3 Zeilen, sondern bis zu 5000, also der Range("A1:A5000").

Gruss Gerald

  

Betrifft: AW: Open Textdatei for output von: Armin
Geschrieben am: 25.02.2010 08:49:32

Hallo Gerald,

so strBla = Cells(1, 1) & Cells(2, 1) & Cells(3, 1)

Gruß Armin


  

Betrifft: AW: Open Textdatei for output von: Michael H
Geschrieben am: 25.02.2010 08:53:38

Hallo Gerald!

Einfach eine Schleife:

Sub Test()
    Dim strBla As String
    
    Open "c:\DATEI1.txt" For Output As #1
    for i=1 to 5000
       Print #1 = "'" & Cells(i, 1) 'Hochkomma, damit keine Leerzeichen bei Zahlen übergeben  _
werden
       Print #1,  "" 'für den Zeilenumbruch
    next i
    Close #1
End Sub
Gruß
Michael H


  

Betrifft: AW: Open Textdatei for output von: Gerald
Geschrieben am: 25.02.2010 09:19:02

Hallo Michael,

Danke für Deine Hilfe. Es klappt!
Mir reicht folgender Code:

Sub Test()
    Dim i As Integer
    
    Open "c:\DATEI1.txt" For Output As #1
        For i = 1 To 5000
            Print #1, Cells(i, 1)
        Next i
    Close #1
End Sub
Damit ist der Fall gelöst.
Besten Dank nochmals.


Gruss Gerald


  

Betrifft: AW: Open Textdatei for output von: Michael H
Geschrieben am: 25.02.2010 10:35:16

Danke für die Rückmeldung.


  

Betrifft: AW: Open Textdatei for output von: Gerald
Geschrieben am: 25.02.2010 08:56:33

Hallo Armin,

Danke für die schnelle Antwort.

Bei Deiner Vorgehensweise erzeuge ich aus allen vorhandenen Zeilen einen Zelleninhalt, was meinem Anfangsbeispiel entspricht.
Ich möchte aber in meiner Textdatei 3 Zeilen bzw. 5000 Zeilen haben und nicht nur eine ganz lange.

Gruß Gerald


Beiträge aus den Excel-Beispielen zum Thema "Open Textdatei for output"