Exportieren Sie eine Textdatei, aber bearbeiten Sie weiterhin die XLSX-Datei

Exportieren Sie eine Textdatei, aber bearbeiten Sie weiterhin die XLSX-Datei

Ich verwende Excel, um Textdateien zu generieren, die dann als Eingabe in eine Datenbank analysiert werden. Ich bin ständig genervt, wenn ich die XLSX-Datei als Textdatei speichern und Excel schließen muss, weil ich die Textdatei jetzt in Excel bearbeite. Gibt es eine Möglichkeit, die ich einfach nicht sehe, um die Textdatei zu generieren, die XLSX-Datei aber in Excel geöffnet zu lassen?

Antwort1

Dazu benötigen Sie ein VBA-Makro, das beispielsweise so aussehen kann:

Sub WriteTextFile()
  Dim FilePath As String
  Dim CellData As String
  Dim LastCol As Long
  Dim LastRow As Long

  LastCol = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
  LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
  CellData = ""

  FilePath = Application.DefaultFilePath & "\euth.csv"

  Open FilePath For Output As #2

  For i = 1 To LastRow
    For j = 1 To LastCol

      If j = LastCol Then
        CellData = CellData + TrimtActiveCell(i, j).Value)
      Else
        CellData = CellData + TrimtActiveCell(i, j).Value) + ","
      End If

      Next j

      Write #2, CellData
      CellData = ""
    Next i

    Close #2

    MsgBox ("Done")
End Sub

Sie können die Subroutine beliebig ändern, beispielsweise „euth.csv“ als Parameter hinzufügen oder danach fragen. Wenn die Tabelle nur eine Spalte hat, kann dieser Code erheblich vereinfacht werden.

Eine Erklärung der oben verwendeten Befehle finden Sie im Artikel Schreiben in Textdateien in Excel VBA/

verwandte Informationen