Exporta un archivo de texto pero sigue editando el archivo xlsx

Exporta un archivo de texto pero sigue editando el archivo xlsx

Utilizo Excel para generar archivos de texto que luego se analizan como entrada a una base de datos. Me molesta constantemente cuando tengo que guardar el archivo xlsx como un archivo de texto y cerrar Excel porque ahora estoy editando el archivo de texto en Excel. ¿Hay alguna manera que no veo para generar el archivo de texto pero mantener el archivo xlsx abierto en Excel?

Respuesta1

Necesitará una macro VBA para eso, que puede verse así:

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

Puede modificar la subrutina como desee, tal vez agregando "euth.csv" como parámetro o solicitándolo. Si la hoja de cálculo tiene sólo una columna, este código se puede simplificar considerablemente.

Para obtener una explicación de los comandos utilizados anteriormente, consulte el artículo. Escribir en archivos de texto en Excel VBA/

información relacionada