xtbodx

Mehrere Spalten aus .xls in .txt kopieren, ohne dazwischen Lücken durch Tabstops zu haben

Nachdem mir meine erste Frage perfekt beantwortet ist habe ich direkt noch eine.

Ist es möglich per batch aus einer .xls oder .xlsx mehrere Spalten in eine .txt zu kopieren, ohne dazwischen die Tabs zu haben?

Beispiel .xls/.xlsx (Die Underlines stehen für die Tabs)
a_1
a_2
a_3
a_4

Ergebnis .txt
a1
a2
a3
a4

Ich vermute zwar, dass es nicht geht und kenne bereits die Methode einfach die Spalten zu kopieren und in die .txt einzufügen. Anschließend kann man natürlich die Tabstops zwischen den Spalten kopieren und via STRG+H zu ersetzen aber eine .bat oder ähnliches wäre natürlich bequemer.


LG, xtbodx
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 153940

Url: https://administrator.de/forum/mehrere-spalten-aus-xls-in-txt-kopieren-ohne-dazwischen-luecken-durch-tabstops-zu-haben-153940.html

Ausgedruckt am: 04.05.2025 um 06:05 Uhr

Crusher79
Crusher79 27.10.2010 um 20:25:17 Uhr
Goto Top
Hi,

http://www.softinterface.com/Convert-XLS%5CConvert-XLS.htm

Commandn Line: http://www.softinterface.com/Convert-XLS%5CConvert-XLS.htm#%E2%80%98_Co ...

zum Bleistift.

Numerous CSV (comma delimited file) manipulation features including padding, swapping out the delimiter and more. See below for more details.

Sollte ja auch bei xls files gehen. Schaus dir mal an.
bastla
bastla 27.10.2010 um 20:30:35 Uhr
Goto Top
Hallo xtbodx!

Als Batch nicht wirklich, aber als Batch, der ein VBScript erzeugt, das die Arbeit macht, etwa so:
@echo off & setlocal
set "XLS=D:\TestMappe.xlsx"  
set "TXT=D:\Test.txt"  

set G=%temp%\GetFromExcel.vbs
>%G%  echo On Error Resume Next: Set oXL=WScript.CreateObject("EXCEL.application"):With oXL  
>>%G% echo .Visible = False:.Workbooks.Open WScript.Arguments(0):.Worksheets(1).Activate
>>%G% echo R=1:Do While .Cells(R,"A")^<^>"":WScript.Echo .Cells(R,"A")^&.Cells(R,"B"):R=R+1:Loop  
>>%G% echo .ActiveWorkbook.Close False:.Application.Quit:End With
cscript //nologo %G% "%XLS%">"%TXT%"  
Es werden hier (siehe Zeile 8) die Spalten A und B ab Zeile 1 bis zur ersten leeren Zelle in Spalte A ausgelesen und kombiniert in die vorgegebene Textdatei geschrieben.

[Edit] Anders, als bei dem von Crusher79 vorgeschlagenen Programm, wird hier allerdings ein installiertes Excel vorausgesetzt. [/Edit]

Grüße
bastla