Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
948to952
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
xls als txt speichern
10.02.2008 16:46:43
Berth
Hallo liebe Excel-Freunde,
Ich habe ein Excel-File mit 2 bzw. mehr Tabellenblättern und jeweils 256 Spalten (d.h. maximal mögliche Anzahl). Ich möchte Die xls-Datei in einer txt-Datei speichern und zwar so, dass die Spalten aller Tabellenblätter durch Tabulatoren getrennt hintereinander in einer txt-Datei vorkommen.
Die soll durch VBA realisiert werden. Hat jemand von Euch einen guten Vorschlag bzw. ist das in Excel überhaupt möglich?
Vielen Dank und viele Grüße
Berth

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: xls als txt speichern
10.02.2008 17:14:00
Tino
Hallo,
wie viel Zeilen werden maximal genutzt?
Könnten alle Zeilen von allen Blättern untereinander auf eine Tabelle passen?
Gruß
Tino

AW: xls als txt speichern
10.02.2008 17:45:00
Franc
Darf man nach dem warum fragen?
Ich weiß zwar nicht wieviel Zeichen in jeder Spalte stehen aber das wird doch verdammt unübersichtlich im Textfile.

AW: xls als txt speichern
10.02.2008 17:55:00
Tino
Hallo,
mein Gedanke war, alle Blätter in einem Blatt untereinander zusammenkopieren, diese Tabelle
als Textfile speichern und zum Schluss dieses Blatt wieder löschen.
Sonst müsste man alle Zeilen aller Blätter einzeln in ein Textfile schreiben.
Gruß
Tino

Anzeige
AW: xls als txt speichern
10.02.2008 17:52:00
fcs
Hallo berth,
folgendes Makro shreibt die Inhalte der Blatter in der aktiven Datei in eine Textdatei.
Du muss im Code noch festlegen, ob du die Value oder Text-Eigenschaft der Zellen in die Datei schreiben willst. Mit der Text-Eigenschaft werden die Inhalte so geschrieben, wie in Excel formatiert/angezeigt.
Evtl. gibt es auch noch ein Limit für die Tabs pro Zeile, musste halt mal probieren. mit 258 Spalten hat es funktioniert.
Gruß
Franz

Sub FileExport()
'Zeilenweiser Export der Spalten aus mehren Excel-Tabellenblätter
Dim Zeile As Long, wks As Worksheet, wbAktiv As Workbook, BlattNr As Integer
Dim FF As Integer, strText As String, ZeilenBlatt As Long, varDatei
Dim Spalte As Integer
varDatei = Application.GetSaveAsFilename(InitialFilename:="DatenFile.txt", _
Filefilter:="Textfiles (*.txt),*.txt", _
Title:="Dateiname für Daten-Textfile auwählen/festlegen")
If varDatei = False Then GoTo Ende
Set wbAktiv = ActiveWorkbook
Set wks = wbAktiv.Worksheets(1)
'Letzte Datenzeile ermitteln
ZeilenBlatt = wks.Cells(wks.Rows.Count, 1).End(xlUp).Row
FF = FreeFile
'Daten ins File schreiben
Open varDatei For Output As #FF
Application.ScreenUpdating = False
For Zeile = 1 To ZeilenBlatt
strText = ""
For BlattNr = 1 To wbAktiv.Worksheets.Count
Set wks = wbAktiv.Worksheets(BlattNr)
For Spalte = 1 To wks.Cells.SpecialCells(xlCellTypeLastCell).Column
If BlattNr = 1 And Spalte = 1 Then
strText = wks.Cells(Zeile, Spalte).text
'          strText = wks.Cells(Zeile, Spalte).Value
Else
strText = strText & vbTab & wks.Cells(Zeile, Spalte).text
'          strText = strText & vbTab & wks.Cells(Zeile, Spalte).Value
End If
Next
Next
Print #FF, strText
Next
Close #FF
Application.ScreenUpdating = True
MsgBox "Daten wurden in die Textdatei geschrieben!"
Ende:
Set wbAktiv = Nothing: Set wks = Nothing
End Sub


Anzeige
AW: xls als txt speichern
10.02.2008 18:15:47
Tino
Hallo,
so würde ich es entsprechend machen.

Sub test()
Dim TabZ As Workbook
Dim a As Byte, SpUnter As String
Set TabZ = ThisWorkbook
ChDir ThisWorkbook.Path
SpUnter = Application.GetSaveAsFilename("Neue TextFile.txt")
Worksheets.Add Before:=ActiveWorkbook.Worksheets(1)
For a = 2 To TabZ.Sheets.Count
TabZ.Sheets(a).Range("A1:" & TabZ.Sheets(a).Cells.SpecialCells(xlCellTypeLastCell).Address). _
Copy
TabZ.Sheets(1).Cells(Cells.SpecialCells(xlCellTypeLastCell).Offset(1, 0).Row, 1).PasteSpecial
Next a
TabZ.Sheets(1).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
SpUnter, _
FileFormat:=xlText, CreateBackup:=False
ActiveWorkbook.Close
TabZ.Sheets(1).Delete
Application.DisplayAlerts = True
End Sub


Gruß
Tino

Anzeige
AW: xls als txt speichern
10.02.2008 18:38:00
Tino
Hallo,
ein weiters Problem, dass ich aber auch erst jetzt bemerkt habe, es passen nur 1024 Zeichen in eine
Zeile eines Textfils. Bei 256 Spalten muss man recht Sparsam mit den Zeichen umgehen.
Gruß
Tino

288 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige