Hallo tobster,
mir fiel noch ein, dass die Zellwerte auch nummerisch sein können. Dann führt vbtab zu einem Typenkonflikt.
Besser:
For z = 1 To interv
for y=1 to Spaltenmaximum-1
Print #1, cstr(Sheets(sheet).Cells(z, y).Value)+vbtab;
next y
Print #1, cstr(Sheets(sheet).Cells(z, y)).Value
Next z
Gruß
Holger
Holger schrieb am 24.02.2009 09:13:08:
Hallo tobster,
write# und print# fügen dann keinen Zeilenumbruch ein, wenn der Variablen kein Komma oder Semikoon folgt. Willst du für die letzte Variable einer Zeile den Umbruch erhalten, musst du diese außerhalb der Schleife ausführen, also z.B.
For z = 1 To interv
for y=1 to Spaltenmaximum-1
Print #1, Sheets(sheet).Cells(z, y).Value+vbtab;
next y
Print #1, Sheets(sheet).Cells(z, y).Value
Next z
Gruß
Holger
tobster schrieb am 23.02.2009 13:48:01:
hallo,
ich würde gerne eine Tabelle in eine txt-Datei printen, wobei die Zellen einer Zeile auch in der Text-Datei in einer Zeile stehen sollen.
Darüber hinaus sollen die einzelnen Zellwerte in der txt-Datei durch tabs getrennt sein, so daß ich am Ende wieder eine Tabellenstruktur in der txt-Datei habe.
Bisher sieht's so aus:
*************
For z = 1 To interv
Print #1, Tab(3); Sheets(sheet).Cells(z, 1).Value, Sheets(sheet).Cells(z, 2).Value, Sheets(sheet).Cells(z, 3).Value
Next z
*************
statt aber jede Spalte mit 1-3 anzusprechen, würde ich hier auch gerne eine Laufvariable einführen, da ich manchmal mehr als nur 3 Spalten habe. dann schreibt er die einzelnen Zellen allerdings nicht mehr in eine Zeile...
Kann ich den Zeilenumbruch irgendwie unterbinden???
oder habt ihr eine gute andere Idee???
DANKE schonmal.
gruß,
tobster |