Hojas de trucos de VBA: comandos y listas de sintaxis

PDF de hoja de referencia de VBA (descarga gratuita)

Descargue nuestro PDF gratuito de hoja de referencia de Excel VBA para una referencia rápida.

Descargar

Hojas de trucos de VBA

Consulte esta página para obtener listas de todos los comandos y sintaxis de VBA comunes. Encontrará muchos comandos básicos (por ejemplo, insertar una hoja) y algo de sintaxis avanzada (por ejemplo, trabajar con matrices).

Consejos:

Utilice CTRL + F para buscar en esta página.

Añade esta página a marcadores (CTRL + D en Chrome).

Hojas

DescripciónCódigo VBAActivar por nombre de pestañaHojas ("Entrada"). ActivarActivar por nombre de código VBASheet1.ActivateActivar por posición de índiceHojas (1) .ActivarHoja siguienteActiveSheet.Next.ActivateObtener ActiveSheetMsgBox ActiveSheet.NameSeleccionar hojaHojas ("Entrada"). SeleccioneEstablecer como variableDim ws como hoja de trabajo
Establecer ws = ActiveSheetNombre / Cambiar nombreActiveSheet.Name = "NewName"Agregar hojaSábanas.AñadirAgregar hoja y nombreSheets.Add.Name = "Nueva hoja"Agregar hoja a variableDim ws como hoja de trabajo
Establecer ws = Sheets.AddHoja de copiaHojas ("Hoja1"). Copiar antes: = Hojas ("Hoja2")Ocultar hojaHojas ("Hoja1"). Visible = Falso
o
Hojas ("Hoja1"). Visible = xlSheetHiddenMostrar hojaHojas de cálculo ("Hoja1"). Visible = Verdadero
o
Hojas ("Hoja1"). Visible = xlSheetVisibleHoja muy ocultaHojas ("Hoja1"). Visible = xlSheetVeryHiddenEliminar hojaHojas ("Hoja1"). EliminarHoja claraHojas ("Hoja1"). Cells.ClearDesproteger (sin contraseña)Hojas ("Hoja1"). DesprotegerDesproteger (contraseña)Hojas de cálculo ("Hoja1"). Desproteger "Contraseña"Proteger (sin contraseña)Hojas ("Hoja1"). ProtegerProteger (contraseña)Hojas de cálculo ("Hoja1"). Proteger "Contraseña"Proteger pero permitir el acceso a VBAHojas ("Hoja1"). Proteger UserInterfaceOnly: = True

volver a la cima

Celdas y rangos

DescripciónCódigo VBAActivar celdaRango ("B3"). Activar
Celdas (3,2) .ActivarSeleccionar rangoRango (“a1: a3”). Seleccionar
Rango (Rango (“a1”), Rango (“a3”)). Seleccionar
Rango (celdas (1, 1), celdas (3, 1)). SeleccioneRedimensionarRango ("B3"). Redimensionar (2, 2) .SeleccioneCompensarRango ("B3"). Desplazamiento (2, 2) .SeleccioneDupdoRango ("A1: B3"). Rango de copia ("D1")CorteRango ("A1: B3"). Rango de corte ("D1")BorrarRango ("A1: B3"). Eliminar
Rango ("A1: B3"). Eliminar turno: = xlShiftToLeftClaroRango ("A1: A3"). Borrar
Rango ("A1: A3"). ClearContents
Rango ("A1: A3"). ClearFormatContarRango ("A1: A3"). RecuentoEstablecer como variableAtenuar como rango
Establecer rng = Rango ("A1")Fusionar / Des fusionarRango ("A1: A3"). Combinar
Rango ("A1: A3"). DesunirBucle a través de celdas

Atenuar celda como rango

Para cada celda del rango ("A1: C3")
MsgBox cell.Value
Siguiente celda

volver a la cima

Filas

DescripciónCódigo VBAActivarFilas (1) .Activar
Filas ("1: 1"). Activar
Rango ("a1"). EntireRow.ActivateAnchura alturaRango ("A1"). EntireRow.RowHeight = 30BorrarRango ("A1"). Fila completa.EliminarContarRango ("A1"). Rows.CountInsertarRango ("A1"). Fila completa. InsertarÚltimodim lRow siempre que
lRow = Celdas (Rows.Count, 1) .End (xlUp) .RowDupdoRango ("1: 1"). Rango de copia ("5: 5")InsertarRango ("1: 1"). Copiar
Rango ("5: 5"). Insertar

volver a la cima

Columnas

DescripciónCódigo VBAActivarColumnas (1) .Activar
Columnas ("a: a"). Activar
Rango (“a1”). Columna completa.ActivarAnchura alturaRango ("A1"). EntireColumn.ColumnWidth = 30BorrarRango ("A1"). Columna completa.EliminarContarRango ("A1"). Columnas.CuentaInsertarRango ("A1"). Columna completa. InsertarÚltimodim lCol siempre que
lCol = Celdas (1, Columns.Count) .End (xlToLeft) .ColumnDupdoRango ("A: A"). Rango de copia ("E: E")InsertarRango ("A: A"). Copiar
Rango ("E: E"). Insertar

volver a la cima

¿Cansado de buscar ejemplos de código VBA? ¡Prueba AutoMacro!

Libros de trabajo

DescripciónCódigo VBAActivarLibros de trabajo ("Libro1"). ActivarActivar primero abiertoLibros de trabajo (1) .ActivarActivar último abiertoLibros de trabajo (Workbooks.Count) .ActivarObtener ActivateWorkbookMsgBox ActiveWorkbook.NameObtenga este libro de trabajo (que contiene el código VBA)MsgBox ThisWorkbook.NameAgregarCuadernos de trabajo AgregarAgregar a variableDim wb como libro de trabajo
Establecer wb = Workbooks.AddAbiertoWorkbooks.Open ("C: \ example.xlsm")Abierto a variableDim wb como libro de trabajo
Establezca wb = Workbooks.Open ("C: \ example.xlsm")CerrarLibros de trabajo ("Libro1"). Cierre SaveChanges: = False
Libros de trabajo ("Libro1"). Cierre SaveChanges: = TrueAhorrarLibros de trabajo ("Libro1"). GuardarGuardar comoLibros de trabajo ("Libro1"). Guardar como strFileNameProteger / DesprotegerLibros de trabajo (1) .Proteger la "contraseña"
Libros de trabajo (1). Desproteger "contraseña"Establecer como variableDim wb como libro de trabajo
Establecer wb = Workbooks ("Libro1")Recorrer todos los libros de trabajo en libros de trabajo

Dim wb como libro de trabajo

Para cada wb en libros de trabajo
MsgBox wb.Name
Siguiente wb

Comprobar existeSi Dir ("C: \ Book1.xlsx") = "" Entonces
MsgBox "El archivo no existe".
Terminara siCopia cerradaFileCopy "C: \ file1.xlsx", "C: \ file2.xlsx"

volver a la cima

Ajustes

DescripciónCódigo VBAActualización de pantallaApplication.ScreenUpdating = Falso
Application.ScreenUpdating = TrueMostrar alertasApplication.DisplayAlerts = Falso
Application.DisplayAlerts = TrueEventosApplication.EnableEvents = False
Application.EnableEvents = TrueHabilitar la tecla CancelarApplication.EnableCancelKey = xlDisabled
Application.EnableCancelKey = xlInterruptComparación de texto - Ignorar mayúsculas y minúsculasOpción Comparar textoRequerir declaración de variableOpción explícitaCálculos automáticosApplication.Calculation = xlManual
Application.Calculation = xlAutomaticComprobación de errores de fondoApplication.ErrorCheckingOptions.BackgroundChecking = False
Application.ErrorCheckingOptions.BackgroundChecking = TrueMostrar barra de fórmulasApplication.DisplayFormulaBar = Falso
Application.DisplayFormulaBar = TrueCongelar panelesActiveWindow.FreezePanes = Falso
ActiveWindow.FreezePanes = VerdaderoVista de pantalla completaApplication.DisplayFullScreen = False
Application.DisplayFullScreen = TrueLa previsualización del salto de páginaActiveWindow.View = xlPageBreakPreview
ActiveWindow.View = xlNormalViewMostrar barras de desplazamientoCon ActiveWindow
.DisplayHorizontalScrollBar = Falso
.DisplayVerticalScrollBar = Falso
Terminar con Con ActiveWindow
.DisplayHorizontalScrollBar = Verdadero
.DisplayVerticalScrollBar = Verdadero
Terminar conMostrar barra de estadoApplication.DisplayStatusBar = False
Application.DisplayStatusBar = TrueContenido de la barra de estadoApplication.StatusBar = "¡¡¡Estoy trabajando ahora !!!"
Application.StatusBar = FalseMostrar pestañas del libro de trabajoActiveWindow.DisplayWorkbookTabs = Falso
ActiveWindow.DisplayWorkbookTabs = VerdaderoNombre de usuarioApplication.UserName = "AutomateExcel.com"Título de la aplicaciónApplication.Caption = "AutomateExcel Model"ZoomActiveWindow.Zoom = 80

volver a la cima

Errores

DescripciónCódigo VBAEn caso de error: código de detención y error de visualizaciónEn caso de error Goto 0En caso de error: omita el error y continúe ejecutándoseEn caso de error, reanudar siguienteEn caso de error: vaya a una línea de código [Etiqueta]En caso de error, vaya a [Etiqueta]Borra (restablece) el errorEn caso de error, vaya a -1Mostrar número de errorMsgBox Err.NumberMostrar descripción del errorMsgBox Err. DescripciónFunción para generar error propioErr.Raise

volver a la cima

Archivos

DescripciónCódigo VBACopiar archivoFileCopy "C: \ test \ test_old.xlsx", "C: \ test \ test_new.xlsx"Borrar archivoMata "C: \ test \ example.xlsx"Hacer carpetaMkDir "C: \ test \"Eliminar todos los archivos de la carpetaMata "C: \ test \" y "*. *"Eliminar carpetaMata "C: \ test \" y "*. *"
RmDir "C: \ test \"Directorio actualstrPath = CurDir ()Ruta de ThisWorkbookstrPath = ThisWorkbook.PathRecorrer todos los archivos de la carpeta

strFile = Dir ("C: \ prueba" y "\ *")

Hacer mientras Len (strFile)> 0
Debug.Print strFile
strFile = Dir
Círculo

volver a la cima

Buen producto. AutoMacro no solo escribe su código, sino que enseña sobre la marcha "- Tony, Reino Unido

Aprende más

Lea nuestras más de 900 reseñas

Matrices

DescripciónCódigo VBACrearDim arr (1 a 3) como variante
arr (1) = "uno"
arr (2) = "dos"
arr (3) = "tres"Crear desde ExcelDim arr (1 a 3) como variante
Atenuar celda como rango, i como entero
i = LBound (arr)
Para cada celda del rango ("A1: A3")
yo = yo + 1
arr (i) = cell.value
Siguiente celdaLeer todos los artículosDim i as Long
Para i = LBound (arr) a UBound (arr)
MsgBox arr (i)
Siguiente yoBorrarBorrar arrMatriz a cadenaDim sName como cadena
sName = Join (arr, ":")Aumentar el tamañoReDim Preserve arr (0 a 100)Valor ajustadoarr (1) = 22

volver a la cima

Programación VBA | ¡Code Generator funciona para usted!

Colecciones

DescripciónCódigo VBACrearDim coll como nueva colección
coll.Añadir "uno"
coll.Añadir "dos"Crear desde ExcelDim coll como nueva colección
Atenuar celda como rango
Para cada celda del rango ("A1: A2")
coll.Add cell.value
Siguiente celdaAñadir artículocoll.Añadir "Valor"Agregar elemento antescoll.Añadir "Valor", Antes: = 1Agregar artículo despuéscoll.Añadir "Valor", Después: = 1Leer artículoMsgBox coll (1)Contar artículoscoll.CountLeer todos los artículosAtenuar elemento como variante
Para cada artículo en coll
Elemento MsgBox
Proximo articuloRemover el artículocoll.Eliminar (1)Eliminar todos los elementosSet coll = Nueva colección

volver a la cima

Diccionarios

DescripciónCódigo VBAReferencia requeridaHerramientas> Referencias> Microsoft Scripting RuntimeCrearDim dict como nueva secuencia de comandos.
dict.Añadir ""
dict.Añadir ""Crear desde ExcelDim dict como nueva secuencia de comandos.
Atenuar celda como rango
Dim key como entero
Para cada celda del rango ("A1: A10")
clave = clave + 1
dict.Add key, cell.value
Siguiente celdaAñadir artículodict.Añadir "Clave", "Valor"Valor de cambiodict ("Clave") = "Valor"Obtenga valorMsgBox dict ("Clave")Compruebe el valorSi dict.Exists ("Clave") Entonces
MsgBox "Existe"
Terminara siRemover el artículodict.Remove ("Clave")Eliminar todos los elementosdict.RemoveAllBucle a través de elementosDim key como variante
Para cada tecla en dict.Keys
MsgBox clave, dict (clave)
Siguiente claveContar artículosdict.CountHacer que las claves sean sensibles a las mayúsculas y minúsculasdict.CompareMode = vbBinaryCompareHacer que las mayúsculas y minúsculas no sean sensiblesdict.CompareMode = vbTextCompare

volver a la cima

AutoMacro: el complemento VBA definitivo

AutoMacro: Complemento VBA con cientos de ejemplos de códigos VBA listos para usar y mucho más.

Aprende más

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave