Leer un archivo .txt desde un UserForm (mediante ListBox o Combobox)

Necesito incorporar a un USERFORM la información de un archivo .txt, pero no tengo idea de cómo comenzar a armarlo.

El Archivo Excel con la estructura ya está lista, pero necesito que apareza la información de un archivo .txt dentro del userform y no se cómo hacerlo.

1 Respuesta

Respuesta
1

Envíame tu archivo de excel con tu formulario, también me envías un ejemplo del archivo txt; con una imagen, me explicas cómo quieres poner los datos del txt en el userform.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario "CarlosC" y el título de esta pregunta.

Te anexo la macro

Dim h1
'
Private Sub CommandButton1_Click()
'Por.Dante Amor
    Application.ScreenUpdating = False
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Seleccione Archivo de Texto"
        .Filters.Clear
        .Filters.Add "Todos", "*.*"
        .Filters.Add "txt", "*.txt"
        .FilterIndex = 2
        .AllowMultiSelect = False
        .InitialFileName = ThisWorkbook.Path
        If .Show Then
            archivo = .SelectedItems.Item(1)
            ChDir "C:\trabajo"
            Workbooks.OpenText Filename:=archivo, _
            Origin:=xlWindows, StartRow:=1, DataType:=xlFixedWidth, _
            FieldInfo:=Array(0, 1), TrailingMinusNumbers:=True
            Set h1 = ActiveWorkbook
            ListBox1.RowSource = "A1:A" & Range("A" & Rows.Count).End(xlUp).Row
        End If
   End With
End Sub
'
Private Sub CommandButton2_Click()
    Unload UserForm1
End Sub
'
Private Sub UserForm_Terminate()
    On Error Resume Next
    h1.Close False
End Sub


Saludos. Dante Amor

Estimado, Dante, te estoy enviando otro e-mail para ver si se puede modificar algo que no me funciona.

Atentamente.

Carlos.

Con lo siguiente validas primero si existe el archivo

Private Sub CommandButton1_Click()
Dim LineofText As Variant
Dim archivo As Variant
    ' Open the file for Input.
    'Open "c:\procesar\temp\00014600.TXT" For Input As #1
    archivo = "c:\procesar\temp\00014600.TXT"
    If Dir(archivo) = "" Then
        MsgBox "El archivo no existe"
        Exit Sub
    End If
    Open archivo For Input As #1
      ' Read each line of the text file into a single string
      ' variable.
    On Error Resume Next
    Do While Not EOF(1)
         Line Input #1, LineofText
         ListBox1.AddItem LineofText
    Loop
    ' Close the file.
    Close #1
End Sub

Saludos.Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas