Carol tiene un directorio con alrededor de 1,000 archivos con nombres como YR1905-LIC12345-Smith, Harry-Brown, Mary. A ella le gustaría traer todos estos nombres de archivo (no los archivos en sí) en una hoja de trabajo y separar los nombres en el tablero. Por lo tanto, el nombre de archivo de ejemplo ocuparía cuatro celdas en una sola fila. Carol cree que se necesitará una macro para lograrlo, pero no está segura de cómo acceder a los nombres de archivo en esa macro.

Por supuesto, puede usar una macro para hacer esto, pero no es necesario que use una macro. En su lugar, puede usar un viejo truco de la era de DOS para obtener lo que necesita.

Para acceder al símbolo del sistema si está utilizando una versión posterior de Excel, simplemente escriba «símbolo del sistema» (sin las comillas) en el cuadro de búsqueda junto al icono de Windows en la barra de tareas. Si está utilizando una versión anterior de Excel, se puede acceder al símbolo del sistema a través de Windows: Inicio | Todos los programas | Accesorios Símbolo del sistema. En el símbolo del sistema, navegue hasta que esté en el directorio que contiene los archivos. Supongamos, para este ejemplo, que está intentando obtener una lista de los archivos en este directorio:

c:\Users\e07482\My Documents\rnp

Para navegar a ese directorio, ingrese este comando en el símbolo del sistema:

chdir "\Users\e07482\My Documents\rnp"

Debe usar las comillas alrededor del directorio debido al espacio en el nombre de la ruta. Luego, escriba el siguiente comando para ver, en pantalla, cuál es la lista de archivos:

dir /b /a-d

La parte «/ a-d» significa «no enumerar directorios». Si está satisfecho con lo que ve en la pantalla, puede enviarlo al archivo utilizando lo siguiente:

dir /b /a-d > filelist.txt

Esto crea un archivo de texto (filelist.txt) que contiene una lista de todos los archivos dentro del directorio actual. Ahora, dentro de Excel, puede seguir estos pasos:

  1. Muestra el cuadro de diálogo Abrir. (En Excel 2007, haga clic en el botón Office y luego en Abrir. En Excel 2010, haga clic en la pestaña Archivo de la cinta y luego en Abrir. En Excel 2013, haga clic en la pestaña Archivo de la cinta, haga clic en Abrir, luego en Computadora y finalmente Examinar. En versiones posteriores de Excel, haga clic en la pestaña Archivo de la cinta y haga clic en Examinar.)

  2. Usando la lista desplegable Archivos de tipo en la parte inferior del cuadro de diálogo, indique que desea abrir archivos de texto (.prn; .txt; * .csv).

  3. Navegue y seleccione el archivo filelist.txt que creó en el símbolo del sistema.

  4. Haga clic en Abrir. Excel inicia el Asistente para importación de texto y muestra el cuadro de diálogo Paso 1 de 3. (Ver figura 1)

  5. Asegúrese de que la opción Delimitada esté seleccionada, luego haga clic en Siguiente. Excel muestra el cuadro de diálogo Paso 2 de 3.

  6. Asegúrese de especificar un guión como delimitador. (Deberá hacer clic en Otro y luego ingresar un guión como delimitador).

  7. Haga clic en Finalizar. Su archivo se importa y se divide en los guiones, tal como lo deseaba.

Los pasos anteriores son bastante fáciles de realizar, especialmente si solo necesita obtener la lista de archivos en Excel de vez en cuando. Si necesita hacerlo de forma más rutinaria, probablemente debería buscar una forma de hacerlo utilizando una macro. La siguiente macro funcionará muy rápidamente:

Sub GetFileNames()

Dim sPath As String     Dim sFile As String     Dim iRow As Integer     Dim iCol As Integer     Dim splitFile As Variant

'specify directory to use - must end in "\"

sPath = "C:\"



iRow = 0     sFile = Dir(sPath)

Do While sFile <> ""

iRow = iRow + 1         splitFile = Split(sFile, "-")

For iCol = 0 To UBound(splitFile)

Sheet1.Cells(iRow, iCol + 1) = splitFile(iCol)

Next iCol         sFile = Dir     ' Get next filename     Loop End Sub

Cuando ejecute la macro, asegúrese de que no haya nada en la hoja de trabajo actual. (Todo lo que haya allí se sobrescribirá). Además, debe cambiar la ruta del directorio que se asigna a la variable sPath cerca del comienzo de la macro.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (11144) se aplica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 y Excel en Office 365. Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

link: / excel-Pulling_Filenames_into_a_Worksheet [Extrayendo nombres de archivo en una hoja de trabajo].