Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ActiveWorkbook.Close Savechanges:=True
ActiveWorkbook.Close(True)
Cerrar libro Excel (sin guardar cambios)
ActiveWorkbook.Close(False)
ActiveWorkbook.Close Savechanges:=False
Cerrar libro Excel (variable, sin guardar cambios)
Application.DisplayAlerts = False Windows(Libro_mayor).Close Application.DisplayAlerts = True Abrir libro
Excel (ruta fija) Workbooks.Open FileName:=C:\Trabajo\Informe.xls
Desplazarnos a la ltima hoja del libro
Sub ultima_hoja()
Sheets(Sheets.Count).Select
End Sub
Desplazarnos a la primera hoja del libro
Sub primera_hoja()
Sheets(1).Select
End Sub
Copiar el contenido seleccionado en otra hoja
Sub CopiaColumnas()
Dim mirango As Range
Dim col As Range
Dim NuevaHoja As Worksheet
Dim i As Integer
Set mirango = Selection
Worksheets.Add
i=0
For Each col In mirango.Columns
col.Copy ActiveSheet.Range(A1).Offset(, i)
i=i+1
Next col
End Sub
Macro para crear ndices de hojas en libros
Private Sub Worksheet_Activate()
Dim cHoja As Worksheet
Dim L As Long
L=1
With Me
.Columns(1).ClearContents
.Cells(1, 1) = INDICE
.Cells(1, 1).Name = Indice
End With
For Each cHoja In Worksheets
If cHoja.Name <> Me.Name Then
L=L+1
With cHoja
.Range(A1).Name = Inicio & cHoja.Index
.Hyperlinks.Add Anchor:=.Range(A1), Address:= , SubAddress:=Indice, TextToDisplay:=Volver al ndice
End With
Me.Hyperlinks.Add Anchor:=Me.Cells(L, 1), Address:= , SubAddress:=Inicio & cHoja.Index,
TextToDisplay:=cHoja.Name
End If
Next cHoja
End Sub
Macro para imprimir hoja activa con datos
Sub macro imprimir_ha()
Range(A1) = Lo que sea
Imprimimos la hoja de excel con una sola copia
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub
Buscar la ltima fila vaca
Sub ultimafila()
variable donde almacenamos el nmero de fila
Dim ultima As Long
vamos subiendo por la columna A desde la ltima fila
ultima = Range(A65536).End(xlUp).Row
le sumamos una porque queremos la 1 fila vaca
ultima = ultima + 1
seleccionamos si queremos otra columna cambiar el nmero
Cells(ultima, 1).Select
End Sub
Encontrar ltima fila (en columna especificada)
Dim intUltimaFila As Range
If WorksheetFunction.CountA(Columns(1)) > 0 Then
Set intUltimaFila = Range(65536).End(xlUp)
MsgBox intUltimaFila.Address
End If
Suprimir filas vacas
intLastRow = Columns(A:A).Range(A65536).End(xlUp).Row
For r = intLastRow To 1 Step -1
If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r
Suprimir filas vacas
Lmites de Excel
Las celdas por hoja es la multiplicacin de las filas por las columnas.
Un libro puede tener un nmero variable de hojas, segn nuestras necesidades. El lmite estaba en 256 y est
ahora en 1024.
El nmero de campos (segn lo visto en la lista del campo) que una sola
tabla dinmica puede tener.