Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Exceldaten auslesen und in eine Batchdatei umwande

Forumthread: Exceldaten auslesen und in eine Batchdatei umwande

Exceldaten auslesen und in eine Batchdatei umwande
07.08.2002 09:32:17
Cara
Hallo ,
ich habe folgendes Problem . ich soll Daten aus einer ExcelTabelle auslesen mitweiteren merkmalen versehen und anschließend in eine Batchdatei umwandeln . dies alles soll automatich geschehen!Kann mir bitte einer helfen?
der Code zum auslesen lautet wie folgt..(hab ich aus dem Internet..

Sub IntTextDatei()
Dim intRow As Integer, intColCount As Integer, intCol As Integer
Dim strTmp As String
intColCount = Range("A1").CurrentRegion.Columns.Count
intRow = 1
Open "Test.txt" For Output As #1
Do Until IsEmpty(Cells(intRow, 1))
strTmp = ""
For intCol = 1 To intColCount
If strTmp <> "" Then
strTmp = strTmp & "," & Cells(intRow, intCol)
Else
strTmp = Cells(intRow, intCol)
End If
Next intCol
Print #1, strTmp
intRow = intRow + 1
Loop
Close
MsgBox "Habe die Daten eingelesen!"
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Exceldaten auslesen und in eine Batchdatei umwande
07.08.2002 10:24:49
Micha
hi,

was genau ist dein problem? das makro tut doch das was du beschrieben hast: die batch-datei wird erstellt, alle spalten pro zeile werden zu einem string zusammen gefasst und dieser dann in die datei geschrieben.

mfg

Re: Exceldaten auslesen und in eine Batchdatei umwande
07.08.2002 15:31:31
Cara
Die Merkmale müssen mit weiteren zusätzlichen Befehlen versehen werden , die nicht in der Exceldatei stehen, falls dir der Begriff Message Queue was sagt?diese sollen aus der excelDatei heraus genereiert werden

Bsp :Die ExelDatei sieht folgendermaßen aus:
A B
Z: /Queuename/ Beschreibung / Put/ DEFPSIST/....
/x.y.c.d / Va- Scannen / enabled/ No /...


Daraus entstehen soll:

DEFINE QALIAS(x.y.c.d) REPLACE +
DESCR('VA-Scannen, Ib-L8 A6, ls91do, 02.08.02') +
PUT(ENABLED) + +
DEFPSIST(NO) +
TARGQ(x.y.c.d)

wie bekomm ich das hin?

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Exceldaten in Batchdateien umwandeln


Schritt-für-Schritt-Anleitung

Um Daten aus einer Excel-Tabelle auszulesen und in eine Batchdatei umzuwandeln, kannst Du das folgende VBA-Skript verwenden. Stelle sicher, dass Du das Makro in einer Excel-Version ausführst, die VBA unterstützt.

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul.

  3. Füge den folgenden Code in das Modul ein:

    Sub IntTextDatei()
       Dim intRow As Integer, intColCount As Integer, intCol As Integer
       Dim strTmp As String
       intColCount = Range("A1").CurrentRegion.Columns.Count
       intRow = 1
       Open "Test.txt" For Output As #1
       Do Until IsEmpty(Cells(intRow, 1))
           strTmp = ""
           For intCol = 1 To intColCount
               If strTmp <> "" Then
                   strTmp = strTmp & "," & Cells(intRow, intCol)
               Else
                   strTmp = Cells(intRow, intCol)
               End If
           Next intCol
           Print #1, strTmp
           intRow = intRow + 1
       Loop
       Close
       MsgBox "Habe die Daten eingelesen!"
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus.

  5. Die Daten werden in eine Textdatei mit dem Namen "Test.txt" ausgegeben.


Häufige Fehler und Lösungen

  • Fehler: "Berechtigung verweigert"

    • Lösung: Stelle sicher, dass Du die Datei nicht in einem geschützten Verzeichnis speicherst. Wähle einen Ordner, auf den Du Schreibzugriff hast.
  • Problem: Batchnummer wird nicht korrekt geprüft

    • Lösung: Überprüfe, ob die Daten in der Excel-Tabelle korrekt formatiert sind. Du kannst die Batchnummer auch im Makro überprüfen und eine entsprechende Fehlermeldung ausgeben.

Alternative Methoden

Eine andere Möglichkeit ist, die Excel-Daten direkt in eine .bat-Datei zu exportieren. Dazu kannst Du den VBA-Code anpassen:

Sub TxtInBatUmwandeln()
    Dim intRow As Integer, intColCount As Integer, intCol As Integer
    Dim strTmp As String
    intColCount = Range("A1").CurrentRegion.Columns.Count
    intRow = 1
    Open "Output.bat" For Output As #1
    Do Until IsEmpty(Cells(intRow, 1))
        strTmp = ""
        For intCol = 1 To intColCount
            If strTmp <> "" Then
                strTmp = strTmp & "," & Cells(intRow, intCol)
            Else
                strTmp = Cells(intRow, intCol)
            End If
        Next intCol
        Print #1, strTmp
        intRow = intRow + 1
    Loop
    Close
    MsgBox "Die Batchdatei wurde erstellt!"
End Sub

Praktische Beispiele

Angenommen, Deine Excel-Datei hat folgende Struktur:

A B
Z: /QueueName Beschreibung
/x.y.c.d VA-Scannen

Du möchtest daraus die folgende Batchdatei erstellen:

DEFINE QALIAS(x.y.c.d)                   REPLACE    +
    DESCR('VA-Scannen')                   +
    PUT(ENABLED)                           +
    DEFPSIST(NO)                           +
    TARGQ(x.y.c.d)

Du kannst dazu die oben genannten VBA-Skripte anpassen, um die zusätzlichen Befehle hinzuzufügen.


Tipps für Profis

  • Nutze die Funktion xls in xlsx umwandeln, falls Du mit älteren Excel-Dateien arbeitest.
  • Teste Dein Makro in einer tmp-Datei, bevor Du es auf die endgültigen Daten anwendest.
  • Verwende Kommentare im Code, um die Funktionsweise zu dokumentieren, was besonders hilfreich ist, wenn Du das Skript später erneut verwenden möchtest.

FAQ: Häufige Fragen

1. Wie kann ich eine Textdatei in eine Batchdatei umwandeln?
Du kannst den VBA-Code so anpassen, dass die Daten direkt in eine .bat-Datei geschrieben werden, wie im Abschnitt "Alternative Methoden" beschrieben.

2. Wie kann ich die Batchnummer prüfen?
Implementiere eine Überprüfung im VBA-Code, um sicherzustellen, dass die Batchnummer den gewünschten Kriterien entspricht. Füge dazu eine If-Bedingung hinzu, die die Batchnummer validiert.

3. Kann ich auch mehrere Excel-Tabellen in eine Batchdatei umwandeln?
Ja, Du kannst eine Schleife verwenden, um durch mehrere Tabellenblätter zu iterieren und die Daten zusammenzuführen, bevor Du sie in die Batchdatei schreibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige