Consejo: Otros idiomas son traducidos por Google. Puedes visitar el English versión de este enlace.
Iniciar sesión
x
or
x
x
Suscríbete
x

or

¿Cómo verificar si existe una carpeta y si no crearla?

¿Alguna vez ha intentado comprobar si existe una carpeta o no en la hoja de cálculo de Excel? En este artículo, hablaré sobre verificar si existe una carpeta en una ruta especificada, si no, la carpeta se creará automáticamente debajo de la ruta.

Compruebe si existe una carpeta en una ruta de archivo específica con código VBA

Cree la carpeta si no existe en una ruta de archivo específica con código VBA


flecha azul burbuja derecha Compruebe si existe una carpeta en una ruta de archivo específica con código VBA


El siguiente código de VBA puede ayudarlo a verificar si existe una carpeta en una ruta de archivo específica, haga lo siguiente:

1. Mantenga presionado el ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

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

Código de VBA: compruebe si existe una carpeta en una ruta de archivo específica:

Sub Test_Folder_Exist_With_Dir()
'Updateby Extendoffice 20161109
    Dim sFolderPath As String
    sFolderPath = "C:\Users\DT168\Desktop\Test folder"
    If Right(sFolderPath, 1) <> "\" Then
        sFolderPath = sFolderPath & "\"
    End If
    If Dir(sFolderPath, vbDirectory) <> vbNullString Then
        MsgBox "Folder exist", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Folder doesn't exist", vbInformation, "Kutools for Excel"
    End If
End Sub

Nota: En el código anterior, debe cambiar la ruta y el nombre de la carpeta Carpeta C: \ Users \ DT168 \ Desktop \ Test a su necesidad.

3. Entonces presione F5 clave para ejecutar este código, obtendrá los siguientes resultados:

carpeta doc existe 1


flecha azul burbuja derecha Cree la carpeta si no existe en una ruta de archivo específica con código VBA

Compruebe si existe una carpeta en una ruta de archivo, de lo contrario, para crearla en esta ruta de archivo específica, el siguiente código de VBA puede ayudarlo a finalizar este trabajo.

1. Mantenga presionado el ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

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

Código de VBA: cree una carpeta si no existe en una ruta de archivo:

Sub MakeMyFolder()
'Updateby Extendoffice 20161109
    Dim fdObj As Object
    Application.ScreenUpdating = False
    Set fdObj = CreateObject("Scripting.FileSystemObject")
    If fdObj.FolderExists("C:\Users\DT168\Desktop\Test folder") Then
        MsgBox "Found it.", vbInformation, "Kutools for Excel"
    Else
        fdObj.CreateFolder ("C:\Users\DT168\Desktop\Test folder")
        MsgBox "It has been created.", vbInformation, "Kutools for Excel"
    End If
    Application.ScreenUpdating = True
End Sub

Nota: En el código anterior, debe cambiar la ruta y el nombre de la carpeta Carpeta C: \ Users \ DT168 \ Desktop \ Test a su necesidad.

3. Después de pegar el código, y presione F5 clave para ejecutarlo:

(1.) Si la carpeta existe, aparecerá un cuadro emergente como se muestra a continuación.

carpeta doc existe 2

(2.) Si la carpeta no existe, se creará en la ruta específica a la vez, y un cuadro emergente emergerá para recordarle que la carpeta ha sido creada, vea la captura de pantalla:

carpeta doc existe 3


Kutools for Excel: la mejor herramienta de productividad de Office aumenta su productividad en un 80%

  • Super Formula Bar (edite fácilmente varias líneas de texto y fórmula); Diseño de lectura (lee y edita fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas y mantener datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... Prevenir células 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 Celdas múltiples sin cambiar la referencia de fórmula; Crear referencias automáticamente a múltiples hojas; Insertar viñetas, Casillas de verificación y más ...
  • Fórmulas favoritas e insertadas rápidamente, Gamas, cuadros y cuadros; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • Extracto del texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes / semana / día, frecuencia y más; Filtro especial por negrita, cursiva ...
  • Combinar libros de trabajo y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes xls, xlsx y PDF...
  • Funciona con Office 2007-2019 y 365, y es compatible con todos los idiomas. Es fácil de implementar en su empresa. Funciones completas de prueba gratuita de 60-day.
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

  • Habilitar la edición y lectura con pestañas en Word, Excel, PowerPoint, Editor, Acceso, Visio y Proyecto.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta tu productividad en un 50% y reduce cientos de clics de ratón por ti todos los días!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
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.
    felipe · 4 months ago
    I'm running this macro, but in the step to create the folder, the process goes down.

    can you help me????


    'Comprobar si la carpeta existe

    Dim ruta As String
    Dim libro As String

    M = ActiveWorkbook.Name

    ruta = Application.Workbooks(M).Sheets("Diccionario").Range("B5").Value

    If Right(ruta, 1) <> "\" Then
    ruta = ruta & "\"
    End If
    If Dir(ruta, vbDirectory) <> vbNullString Then
    MsgBox "Folder exist, please continue"
    Else
    MsgBox "Folder doesn't exist"
    End If

    'Crea la carpeta que necesitas

    Dim fdObj As Object
    Dim folder As String

    folder = Application.Workbooks(M).Sheets("Dicionario").Range("B5").Value (here is where the process falls)

    Application.ScreenUpdating = False
    Set fdObj = CreateObject("Scripting.FileSystemObject")
    If fdObj.FolderExists(folder) Then
    MsgBox "Found it, pleace continue."
    Else
    fdObj.CreateFolder (folder)
    MsgBox "It has been created."
    End If
    Application.ScreenUpdating = True
  • To post as a guest, your comment is unpublished.
    Kyffer · 7 months ago
    Super Thanks!
  • To post as a guest, your comment is unpublished.
    Roger · 8 months ago
    Thanks Man, work amazing
  • To post as a guest, your comment is unpublished.
    Bengbeng · 9 months ago
    This is really helpful! thanks!
  • To post as a guest, your comment is unpublished.
    Kenneth · 1 years ago
    Great article. Just what I was looking for :)
  • To post as a guest, your comment is unpublished.
    Alok · 1 years ago
    It's reflecting an error @ fdObj.CreateFolder ("C:\Users\DT168\Desktop\Test folder")
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Alok,
      The above codes works well in my Excel workbook, the "C:\Users\DT168\Desktop\Test folder" path is my computer path, you should change the folder path to your own.
      Thank you!