Note: The other languages of the website are Google-translated. Back to English

¿Cómo eliminar por lotes todas las carpetas vacías en Outlook?

Supongamos que hay docenas de carpetas vacías debajo de una carpeta de correo en Outlook, generalmente podemos eliminar las carpetas vacías una por una haciendo clic derecho en el menú. En comparación con hacer clic con el botón derecho repetidamente, este artículo presentará un VBA para eliminar rápidamente todas las subcarpetas vacías de una carpeta de Outlook de forma masiva.

Elimine por lotes todas las carpetas vacías en Outlook con VBA

Pestaña Office: habilite la edición y navegación con pestañas en Office, y haga el trabajo mucho más fácil ...
Kutools para Outlook: trae 100 potentes funciones avanzadas a Microsoft Outlook
  • Auto CC / BCC por reglas al enviar correo electrónico; Reenvío automático Varios correos electrónicos por reglas; Respuesta automática sin servidor de intercambio y más funciones automáticas ...
  • Advertencia de BCC - mostrar mensaje cuando intente responder a todos si su dirección de correo está en la lista CCO; Recordar si faltan archivos adjuntosy más funciones de recordatorio ...
  • Responder (todos) con todos los archivos adjuntos en la conversación por correo; Responder muchos correos electrónicos a la vez; Agregar saludo automáticamente cuando responda; Agregar automáticamente fecha y hora al asunto ...
  • Herramientas de adjunto: Desconexión automática, Comprimir todo, Renombrar todo, Guardar todo automáticamente ... Informe rápido, Contar correos seleccionados, Eliminar correos y contactos duplicados ...
  • Más de 100 funciones avanzadas resuelve la mayoría de tus problemas en Outlook 2021 - 2010 u Office 365. Funciones completas Prueba gratuita de 60 días.

flecha azul burbuja derechaElimine por lotes todas las carpetas vacías en Outlook con VBA

Para eliminar todas las subcarpetas vacías de una determinada carpeta de Outlook, haga lo siguiente:

1. prensa otro + F11 teclas para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Hacer clic recuadro > Móduloy pegue debajo del código VBA en la ventana del nuevo módulo.

VBA: elimine todas las subcarpetas vacías de cierta carpeta de Outlook a granel

Public Sub DeletindEmtpyFolder()
Dim xFolders As Folders
Dim xCount As Long
Dim xFlag As Boolean
Set xFolders = Application.GetNamespace("MAPI").PickFolder.Folders
Do
FolderPurge xFolders, xFlag, xCount
Loop Until (Not xFlag)
If xCount > 0 Then
MsgBox "Deleted " & xCount & "(s) empty folders", vbExclamation + vbOKOnly, "Kutools for Outlook"
Else
MsgBox "No empty folders found", vbExclamation + vbOKOnly, "Kutools for Outlook"
End If
End Sub

Public Sub FolderPurge(xFolders, xFlag, xCount)
Dim I As Long
Dim xFldr As Folder 'Declare sub folder objects
xFlag = False
If xFolders.Count > 0 Then
For I = xFolders.Count To 1 Step -1
Set xFldr = xFolders.Item(I)
If xFldr.Items.Count < 1 Then 'If the folder is empty check for subfolders
If xFldr.Folders.Count < 1 Then 'If the folder contains not sub folders confirm deletion
xFldr.Delete 'Delete the folder
xFlag = True
xCount = xCount + 1
Else 'Folder contains sub folders so confirm deletion
FolderPurge xFldr.Folders, xFlag, xCount
End If
Else 'Folder contains items or (subfolders that may be empty).
FolderPurge xFldr.Folders, xFlag, xCount
End If
Next
End If
End Sub

3. prensa F5 Clave o Ejecutar botón para ejecutar este código VBA.

4. En el cuadro de diálogo emergente Seleccionar carpeta, seleccione la carpeta específica cuyas subcarpetas vacías eliminará a granel y haga clic en OK botón. Ver captura de pantalla:

5. Ahora aparece un cuadro de diálogo de Kutools para Outlook y le muestra cuántas subcarpetas vacías se han eliminado. Haga clic en el OK para cerrarlo

Hasta ahora, todas las subcarpetas de la carpeta de Outlook especificada ya se han eliminado de forma masiva.


flecha azul burbuja derechaArtículos Relacionados

Buscar carpeta (ruta completa de la carpeta) por nombre de carpeta en Outlook


Kutools para Outlook: trae 100 funciones avanzadas a Outlook y hace que el trabajo sea mucho más fácil.

  • Auto CC / BCC por reglas al enviar correo electrónico; Reenvío automático Varios correos electrónicos personalizados; Respuesta automática sin servidor de intercambio y más funciones automáticas ...
  • Advertencia de BCC - mostrar mensaje cuando intente responder a todos si su dirección de correo está en la lista CCO; Recordar si faltan archivos adjuntosy más funciones de recordatorio ...
  • Responder (todos) con todos los archivos adjuntos en la conversación de correo; Responder muchos correos electrónicos en segundos; Agregar saludo automáticamente cuando responda; Agregar fecha al asunto ...
  • Herramientas de archivos adjuntos: administre todos los archivos adjuntos en todos los correos, Desconexión automática, Comprimir todo, Renombrar todo, Guardar todo ... Informe rápido, Contar correos seleccionados...
  • Potentes correos electrónicos no deseados por costumbre; Eliminar correos y contactos duplicados... Le permite hacerlo de forma más inteligente, más rápida y mejor en Outlook.
tiro kutools outlook kutools pestaña 1180x121
tiro kutools outlook kutools plus pestaña 1180x121
 
Comentarios (10)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
¡¡¡Brillante!!!
Este comentario fue minimizado por el moderador en el sitio
Recibo el siguiente error cuando ejecuto el anterior "Error de tiempo de ejecución '-2147352567 (80020009)' No se puede eliminar esta carpeta. Haga clic con el botón derecho en la carpeta y luego haga clic en Propiedades para verificar sus permisos para la carpeta. Consulte al propietario de la carpeta o su administrador para cambiar sus permisos"

Parece que la secuencia de comandos mueve 1 elemento a la carpeta eliminada y luego se produce un error.
Este comentario fue minimizado por el moderador en el sitio
De acuerdo, recibo el mismo error.
Este comentario fue minimizado por el moderador en el sitio
El script intenta eliminar una carpeta que ya se eliminó.
Agregué una fila después de xFlag = False con este contenido:
en caso de error, reanudar a continuación
Este comentario fue minimizado por el moderador en el sitio
De hecho, agrega:

On Error Resume Next

DESPUÉS:

Dim x Fldr As Folder 'Declarar objetos de subcarpeta
xFlag = Falso

Debe tener un aspecto como este:

Dim x Fldr As Folder 'Declarar objetos de subcarpeta
xFlag = Falso
On Error Resume Next
Este comentario fue minimizado por el moderador en el sitio
Recibo el mismo error que Bryan... ¿y ahora?
Este comentario fue minimizado por el moderador en el sitio
El script intenta eliminar una carpeta que ya se eliminó.
Agregué una fila después de xFlag = False con este contenido:
en caso de error, reanudar a continuación
Este comentario fue minimizado por el moderador en el sitio
Súper fácil e increíblemente útil. ¡¡Gracias!!
Este comentario fue minimizado por el moderador en el sitio
Se eliminaron 74 carpetas vacías, pero lamentablemente también 109 carpetas que no lo estaban. Otras carpetas vacías quedaron intactas.
Este comentario fue minimizado por el moderador en el sitio
Esto funciono muy bien para mi. Gracias. Algunas carpetas no se pueden eliminar porque son nativas de Outlook, pero las subcarpetas funcionan muy bien.
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL