Note: The other languages of the website are Google-translated. Back to English
Iniciar  \/ 
x
or
x
Registrarse  \/ 
x

or

¿Cómo extraer rápidamente el nombre de archivo de la ruta completa en Excel?

Supongamos que tiene una hoja de trabajo que contiene una lista de rutas de archivo, ahora le gustaría extraer solo el nombre del archivo (la parte derecha de la barra invertida final) de cada ruta como se muestra a continuación. ¿Hay algunos trucos rápidos para hacer frente a esta tarea?

Extraiga el nombre de archivo de la ruta completa con fórmula en Excel
Extraiga el nombre de archivo de la ruta completa con la función definida por el usuario
Extraiga el nombre de archivo de la ruta completa con código VBA


Extraiga el nombre de archivo de la ruta completa con fórmula en Excel

En Excel, puede usar la siguiente fórmula para extraer rápidamente solo el nombre del archivo de la ruta completa.

Seleccione una celda en blanco, ingrese la fórmula a continuación y luego presione el botón Entrar clave.

=MID(A1,FIND("*",SUBSTITUTE(A1,"\","*",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,LEN(A1))

Consejos: A1 es la celda de la que desea extraer el nombre de archivo) y presione el botón Entrar, luego arrastre el controlador de relleno para llenar el rango que desee. Después de eso, el nombre del archivo se extrae de cada celda.

nombre de extracto de doc1


Extraiga el nombre de archivo de la ruta completa con la función definida por el usuario

Con la siguiente función definida por el usuario, puede obtener el nombre del archivo fácil y rápidamente.

1. Mantenga pulsado el ALT + F11 teclas para abrir el Ventana de Microsoft Visual Basic para aplicaciones.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en el Ventana de módulo.

Function FunctionGetFileName(FullPath As String) As String
'Update 20140210
Dim splitList As Variant
splitList = VBA.Split(FullPath, "\")
FunctionGetFileName = splitList(UBound(splitList, 1))
End Function

3. Pulse el botón otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana y vuelva a la hoja de trabajo. En una celda en blanco, B1 por ejemplo, ingrese la siguiente fórmula y presione el botón Entrar clave.

=FunctionGetFileName(A1)

doc-extraer-nombres de archivo1

Luego, seleccione la celda B1 nuevamente, arrastre el controlador de relleno al rango en el que desea aplicar esta fórmula, y todos los nombres de archivo se han extraído de las rutas completas como resultado:

doc-extraer-nombres de archivo1


Extraiga el nombre de archivo de la ruta completa con código VBA

Además de la función definida por el usuario, un código VBA también puede ayudarlo a extraer los nombres de archivo. Por favor haz lo siguiente:

1. Mantenga pulsado el ALT + F11 teclas para abrir el Ventana de Microsoft Visual Basic para aplicaciones.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en la ventana del módulo.

Sub GetFileName()
'Update 20140210
Dim Rng As Range
Dim WorkRng As Range
Dim splitList As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    splitList = VBA.Split(Rng.Value, "\")
    Rng.Value = splitList(UBound(splitList, 1))
Next
End Sub

3. Entonces presione F5 para ejecutar este código y seleccione el rango del que desea extraer el nombre de archivo, vea la captura de pantalla:

doc-extraer-nombres de archivo1

4. Y luego haz clic OK, los nombres de archivo se han extraído de la selección de la siguiente manera:

Nota:: Con este código VBA, los datos originales serán destruidos, por lo que debe copiar uno antes de aplicar este código.


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office / Excel 2007-2019 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Características completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

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!
officetab parte inferior
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Rese · 1 years ago
    Very useful function. Is there a way to modify the script so it finds the filename if the path has either \ or / slashes?

    I have a spreadsheet with various hyperlinks where the underlying paths are either \ or / (back slash or forward slash) separates - I think its because some of the links to files were done just as bookmarks in Word originally, or to files on an internal doc server. Or maybe its because some path links are made with absolute vs relative path links?

    eg:

    ../../../../Documents/2ndQuarter/2019/standardcost_widget12345.pdf
    or
    \fileserver\factory23\Operations\Parts_Mgt\Documents\2ndQuarter\2019\standardcost_widget12345.pdf


    When I ran the getfilename function, it got all the filenames that were in paths with \ between directories or folders, but the links with / slashes were returned as is.
    I altered & added a second function that was similar but replaced the "\" in line 4 with "/" and called it forwardslashgetfilename and run it in a separate column after I run the first function.

    Running one function after another is not difficult, but I was curious if you can expand the code in splitList operation in line 4 to include both "\" or "/". I'm no VBA programmer but I tried splitList = VBA.Split(FullPath, "\" or "/") and it didn't work.

    Thoughts? I'm assuming its some simple syntax - I'm just clueless at this point... but I will start poking around the interwebs...

    Tks!
  • To post as a guest, your comment is unpublished.
    bob · 3 years ago
    The formula raises a #VALUE! error if the source cell has only a filename to begin with.. Embedding the entire formula in an IFERROR function solves this problem, e.g., =IFERROR(<orig formula>,A1)