¿Cómo programo un botón de un Userform para que se importen datos?

Para Dante Amor

Quisiera colocar un botón en un Userform de modo que al presionarlo se importen a una hoja del libro de excel los datos contenidos en un archivo .txt. Seria bueno que al presionar el botón se despliegue una ventana donde pueda seleccionar el archivo desde el que se importará la información.

Nota: Este proceso de importación debería hacerlo al menos dos veces ya que cuento con dos archivos .txt de interés y la idea sería copiar por ejemplo a la Hoja1 los datos del archivo1.txt y a la Hoja2 los datos del archivo2.txt.

1 respuesta

Respuesta
1

H o l a:

Envíame un correo nuevo con lo siguiente:

  • Tu libro de excel con el formulario.
  • Un archivo txt de ejemplo.
  • El archivo txt deberá estar importado en una de las hojas del archivo de excel.
  • Me explicas paso a paso cómo haces la importación del archivo txt a excel

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Carito Suares” y el título de esta pregunta.

Dante,

Te he enviado lo que me has pedido.

Saludos!

H o l  a:

Te anexo la macro

Private Sub ImportarDatos_Click()
'Por.Dante Amor
    Application.ScreenUpdating = False
    ruta = ThisWorkbook.Path & "\"
    arch = Dir(ruta & "archivo*.*")
    Do While arch <> ""
        Sheets.Add after:=Sheets(Sheets.Count)
        With ActiveSheet.QueryTables.Add(Connection:= _
            "TEXT;" & ruta & arch, Destination:=Range("$A$1"))
            .Name = "archivo1_1"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = 850
            .TextFileStartRow = 1
            .TextFileParseType = xlDelimited
            .TextFileTextQualifier = xlTextQualifierDoubleQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = True
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
            .TextFileTrailingMinusNumbers = True
            .Refresh BackgroundQuery:=False
        End With
        arch = Dir()
    Loop
End Sub

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas