Página: Anterior
1 2
3 [4] 5
6 7
Siguiente
TRABAJANDO CON HOJAS
En esta sección veremos algunas instrucciones para utilizar con HOJAS.
1-Seleccionar hojas:
ActiveSheet.Previous.Select '
selecciona la hoja anterior a la activa.
ActiveSheet.Next.Select 'selecciona
la hoja posterior a la activa.
Sheets(Sheets.Count).Select
'selecciona la última hoja.
2-Obtener
información de la hoja
:
nbre = ActiveSheet.Name
'guarda en variable el nombre de la hoja.
nroH = ActiveSheet.Index 'guarda
en variable el número de hoja.
If ActiveSheet.AutoFilterMode = True
Then MsgBox "SI"
'indica si la hoja tiene
activado el Autofiltro.
If ActiveSheet.FilterMode = True
Then MsgBox "SI"
'indica si la hoja está en
modo de filtro por alguna columna.
3-Copiar datos de una hoja a la siguiente:
Ej. 1: Se copia un rango previamente
seleccionado a la hoja sgte.
Selection.Copy 'o también:
Range("A5:H10").Copy
ActiveSheet.Next.Range("B2").Select
ActiveSheet.Paste
Ej. 2
:
Método abreviado, donde se copia en otra hoja a partir de B2
Range("A5:H10").Copy Destination:=Sheets("Base").Range("B2")
NOTA: las 'copias' tienen muchos detalles a
considerar: con o sin formatos, con o sin fórmulas, solo valores, etc. Todo el tema
Mover-Copiar Datos se desarrolla en la Guía Temática Nº
3.
4- Mover o Copiar la hoja entera:
Se realiza
una copia de la hoja activa, colocándola al final de todas.
Sheets("Hoja1").Copy
After:=Sheets(Sheets.Count)
Nota: recordar que luego de la copia
la hoja activa es la que se acaba de crear.
5- Renombrar Hojas:
Luego de crear la
copia en el punto anterior, le asignamos nombre:
ActiveSheet.Name = "HojaNueva"
6- Ocultar filas o columnas:
ActiveCell.EntireRow.Hidden=True ' filas
ActiveCell.EntireColumn.Hidden= True
'col
Nota: para volverlas a mostrar
utilizar la instrucción en False. Por ej:
Range("C1").EntireRow.Hidden = False
7-Proteger o desproteger una hoja:
ActiveSheet.Protect "contraseña"
'proteger con contraseña
ActiveSheet.Unprotect "contraseña"
'quitar la protección
Nota: Para obtener el código con
ciertos permisos que se pueden seleccionar desde la ventana de Protección,
realizar los pasos con la grabadora de macros.
8-Insertar filas o columnas a partir
de cierta ubicación:
'reemplazar la variable 'i' por el nro de columna
ActiveSheet.Column(i).Select
Selection.EntireColumn.Insert
'reemplazar Column por Row en caso de
filas.
9-Eliminar filas o columnas:
Ej. 1: eliminar la fila 7 de hoja activa.
ActiveSheet.Rows("7:7").Select
Selection.EntireRow.Delete
Ej. 2: eliminar cierta fila
de hoja 'Base'.
filx =
5
Sheets("BASE").Range("A" & filx).EntireRow.Delete
Nota: observar que no es necesario
seleccionar previamente la fila.
10-Insertar una imagen en una hoja:
Ej. 1: se indica la
ruta de la imagen en el mismo código.
ActiveSheet.Pictures.Insert
("D:\Mis imágenes\img01.JPG")
Ej. 2: se indica la
ruta de la imagen en una celda. Además la imagen queda seleccionada.
ruta = ActiveSheet.Range("B5")
ActiveSheet.Pictures.Insert(ruta).Select
Nota: la ruta va entre comillas, por ej: "C:\Mis docu\Foto1.jpg"
11-Imprimir (o vista
Previa) de la hoja seleccionada:
ActiveWindow.SelectedSheet.PrintOut Copies:=1, Collate:=True
'o también: ActiveSheet.PrintOut
Nota: Reemplazar PrintOut por
PrintPreview para realizar solo una vista preliminar.
Página: Anterior
1 2
3 [4] 5
6 7
Siguiente