Collapse column

Autor Thema: Tabelle aus Mappe per VBA in Textdatei überführen  (Gelesen 2226 mal)

Offline PrinzPolo

  • Newbie
  • *
  • Beiträge: 6
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2013
Tabelle aus Mappe per VBA in Textdatei überführen
« am: August 19, 2015, 13:44:31 Nachmittag »
Moin!

Wie ist es (auf möglich einfache Art und Weise) möglich per VBA (und dann einer mit dem Custom UI Editor hinzugefügten Schaltfläche) eine Tabelle in eine externe .txt Datei zu speichern?
Der Button steht, es fehlt nur noch das Makro. Beim bisherigen Code ist das Problem, dass immer der Inhalt des Blattes gespeichert wird auf dem man aktuell ist. Es soll aber immer nur ein bestimmtes Blatt gespeichert werden. Der Code bis jetzt (hab viel ausprobiert, deswegen ist er u.a. etwas durcheinander):
Sub StauplanSpeichern(control As IRibbonControl)
    Dim Dateiname As String
    Dim Zeile As Long
    Dim Spalte As Integer
    Dim GanzeZeile As String
    Dim Trennzeichen As String
    ' Hier wird der Dateipfad - und -name festgelegt:
    Dateiname = ThisWorkbook.Path & Application.PathSeparator & "Text-Export.txt"
    Zeile = 1
    Spalte = 1
    Trennzeichen = Chr(9) ' Chr(9) = Tabulator
    Open Dateiname For Output As 1
    ' Alle benutzten Zeilen der aktiven Tabelle werden durchlaufen
    For Zeile = 1 To Worksheets("Stauplan").UsedRange.Rows.Count
        ' Alle benutzten Spalten der aktiven Tabelle werden durchlaufen
        For Spalte = 1 To Worksheets("Stauplan").UsedRange.Columns.Count
            ' Werte der Zellen werden zusammengefügt, getrennt durch Tabstopps
            GanzeZeile = GanzeZeile & Trennzeichen & Cells(Zeile, Spalte).Value
        Next Spalte
        ' die ganze Zeile wird in die Datei geschrieben
        Print #1, GanzeZeile
        GanzeZeile = ""
    Next Zeile
    Close #1
End Sub

Vielen Dank schonmal!

Gruß PrinzPolo

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline losgehts

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2007
Antw: Tabelle aus Mappe per VBA in Textdatei überführen
« Antwort #1 am: August 29, 2015, 13:41:49 Nachmittag »
Hallo,

Zitat
Der Button steht, es fehlt nur noch das Makro. Beim bisherigen Code ist das Problem, dass immer der Inhalt des Blattes gespeichert wird auf dem man aktuell ist.
Ich habe deinen Code nicht getestet, doch mit "Cells(..,..) sprichst du eine Zelle des aktiven Tabellenblattes an.
Mit "Worksheets("Stauplan").Cells(...,...)" sprichst du hingegen eine Zelle des Tabellenblattes "Stauplan" an.


Also einfach diese eine Codezeile von:            ' Werte der Zellen werden zusammengefügt, getrennt durch Tabstopps
            GanzeZeile = GanzeZeile & Trennzeichen & Cells(Zeile, Spalte).Value
in            ' Werte der Zellen werden zusammengefügt, getrennt durch Tabstopps
            GanzeZeile = GanzeZeile & Trennzeichen & Worksheets("Stauplan").Cells(Zeile, Spalte).Value
ändern.

Und, erhälst du das gewünschte Ergebnis?
Grüße, Ulrich

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.