¿Cómo importar varios archivos de texto de una carpeta a una hoja de trabajo?
Por ejemplo, aquí tiene una carpeta con varios archivos de texto, lo que quiere hacer es importar estos archivos de texto en una sola hoja de trabajo como se muestra a continuación. En lugar de copiar los archivos de texto uno por uno, ¿existen trucos para importar rápidamente los archivos de texto de una carpeta a una hoja?
Importe varios archivos de texto de una carpeta a una sola hoja con VBA
Importe el archivo de texto a la celda activa con Kutools para Excel
Importe varios archivos de texto de una carpeta a una sola hoja con VBA
Aquí hay un código VBA que puede ayudarlo a importar todos los archivos de texto de una carpeta específica a una nueva hoja.
1. Habilite un libro de trabajo que desee importar archivos de texto y presione Alt + F11 claves para habilitar Microsoft Visual Basic para aplicaciones ventana.
2. Hacer clic en recuadro > Módulo, copie y pegue el código VBA a continuación en el Módulo ventana.
VBA: importe varios archivos de texto de una carpeta a una hoja
Sub Test()
'UpdatebyExtendoffice6/7/2016
Dim xWb As Workbook
Dim xToBook As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xFiles As New Collection
Dim I As Long
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
If xFile = "" Then
MsgBox "No files found", vbInformation, "Kutools for Excel"
Exit Sub
End If
Do While xFile <> ""
xFiles.Add xFile, xFile
xFile = Dir()
Loop
Set xToBook = ThisWorkbook
If xFiles.Count > 0 Then
For I = 1 To xFiles.Count
Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))
xWb.Worksheets(1).Copy after:=xToBook.Sheets(xToBook.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = xWb.Name
On Error GoTo 0
xWb.Close False
Next
End If
End Sub
3. Prensa F5 para mostrar un cuadro de diálogo y seleccione una carpeta que contenga los archivos de texto que desea importar. Ver captura de pantalla:
4. Hacer clic en OK. Luego, los archivos de texto se han importado al libro de trabajo activo como una nueva hoja por separado.
Importe el archivo de texto a la celda activa con Kutools para Excel
Si desea importar un archivo de texto a una celda o rango específico, puede aplicar Kutools for Excel, Insertar archivo en el cursor utilidad.
Kutools for Excel, con más de 300 funciones prácticas, facilita su trabajo. | ||
Después instalación gratuita Kutools para Excel, haga lo siguiente:
1. Seleccione una celda en la que desee importar el archivo de texto y haga clic en Kutools Más > Importación y exportación > Insertar archivo en el cursor. Ver captura de pantalla:
2. Luego aparece un cuadro de diálogo, haga clic en Explorar para mostrar el Seleccione un archivo para ser insertado en el diálogo de posición del cursor de celda, luego seleccione Archivos de texto de la lista desplegable y luego elija el archivo de texto que desea importar. Ver captura de pantalla:
3. Hacer clic en Abierto > Ok, y el archivo de texto especificado se ha insertado en la posición del cursor, vea la captura de pantalla:
Importar / Insertar archivo de texto en el cursor
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!