You are on page 1of 3

4/24/2014 ENI Training - Libro online

http://www.eni-training.com/client_net/mediabook.aspx?idR=71528 1/3
With ActiveWorkbook
’ Crea una hoja después de la última hoja del libro activo
.Worksheets.Add , .Worksheets(.Worksheets.Count)
’ Modifica el nombre de la nueva hoja y el valor de la celda A1
With .ActiveSheet
.Name = "Síntesis"
.Range("A1") = "Revisión del Presupuesto"
End With
End With
Sub NumPresupuesto()
Dim Hoja As Worksheet

For Each Hoja In ActiveWorkbook.Worksheets
Hoja.Cells(1, 1) = "PRESUPUESTO N° " & Hoja.Index
Instrucciones usadas con los objetos
1. La instrucción With
La instrucción With permite acceder varias veces al mismo objeto, indicándolo una sola vez.
Ofrece varias ventajas:
Optimización del tiempo de ejecución del código.
Ganar tiempo en la escritura del código.
Mejor legibilidad del código.
Sintaxis
With <Objeto>
<código que usa los métodos y propiedades>
<que se relacionan con el objeto>
End With
Ejemplo
Agregar y modificar una hoja de cálculo.
2. La instrucción For Each...Next
La instrucción For Each... Next permite recorrer los objetos de una colección o de una tabla.
Sintaxis
For Each <elemento > In <grupo>
<secuencia de instrucciones>
[Exit For]
<secuencia de instrucciones>
Next <elemento>
Ejemplo
Modificación del contenido de la celda A1 y de la cantidad de hojas del libro activo.
4/24/2014 ENI Training - Libro online
http://www.eni-training.com/client_net/mediabook.aspx?idR=71528 2/3
objeto Es una variable de tipo String, que contiene el nombre del
objeto que es necesario crear.
La palabra clave New Permite crear una nueva instancia de la clase. Si la variable
<Objeto> contiene una referencia a un objeto, esta última
se abandona.
<expresión objeto> Puede ser el nombre de un objeto o de una variable objeto
del mismo tipo. Es decir, una función o método que
devuelva un objeto del mismo tipo.
Nothing Reinicializa la variable objeto y libera el conjunto de
recursos del sistema y la memoria asociadas al objeto.
Sub Crear_Libro()
Dim Libro As Workbook
Dim i As Integer

’ Crear un nuevo libro
Set Libro = Application.Workbooks.Add
’ Eliminar las hojas de la tercera hasta la última
With Libro
Application.DisplayAlerts = False
Hoja.Name = "Presupuesto " & Hoja.Index
Next Hoja
End Sub
If TypeOf obj.Parent Is Worksheet Then_...
3. La instrucción If TypeOf
La instrucción If TypeOf permite comprobar el tipo de un objeto.
Sintaxis
If TypeOf <Objeto> Is <TipoObjeto> Then
<código que usa los métodos y propiedades>
<relacionados con el objeto>
End If
Ejemplo
4. La instrucción Set
La instrucción Set permite atribuir la referencia de un objeto a una variable, llamada variable objeto.
Esta instrucción puede usarse para crear un nuevo objeto (usando en ese caso un método que
permita crear el objeto) o para hacer referencia a un objeto ya existente.
Sintaxis
Set <Objeto> = [New] <expresión objeto>
O Set <Objeto> = Nothing
Ejemplo
Crear un libro con dos hojas y asignarle un nombre a cada una de ellas.
4/24/2014 ENI Training - Libro online
http://www.eni-training.com/client_net/mediabook.aspx?idR=71528 3/3
For i = .Worksheets.Count To 3 Step -1
.Worksheets(i).Delete
Next i
’ Asignar los nombres a las hojas 1 y 2
.Worksheets(1).Name = "Ventas Año 2011"
.Worksheets(2).Name = "Ventas Año 2012"
.SaveAs ThisWorkbook.Path & "\Histórico"
End With

End Sub
Dim Libro As Workbook
Dim Hoja As Worksheet

Set Libro = Application.Workbooks![Histórico.xlsx]
Set Hoja = Libro.Worksheets![Ventas Año 2012]
With Hoja
.Name = "Ventas 2012"
.Range("A2") = "Ventas del año 2012"
End With
Set Hoja = Nothing
Modificar una hoja en un libro abierto.