domingo, 30 de octubre de 2011

Instrucciones usadas con los Objetos.

La instrucción With:

Ejecuta una serie de instrucciones sobre un mismo objeto, ofrece varias ventajas, la primera es que ganas tiempo en escritura y la segunda que mejora la legibilidad del código.

With ActiveSheet
    .Name = “Presupuesto”
    .Range (“A1”) = "Presupuesto año 2011"
End With

La instrucción For Each…Next:

Las instrucciones For Each...Next repiten un bloque de instrucciones para cada uno de los objetos de una colección.

Queremos borrar todo el contenido de cada hoja antes de cerrar un libro.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Hoja As Worksheet
    For Each Hoja In ThisWorkbook.Sheets
        Hoja.Cells.Clear
    Next Hoja
End Sub

Se puede salir de un bucle For Each...Next mediante la instrucción Exit For antes de que finalice.

Sub BuscaNumeros()
    For Each miObjeto In MiColeccion
        If IsNumeric(miObjeto.Value) = False Then
            MsgBox "El objeto contiene un valor no numérico."
            Exit For
        End If
    Next c
End Sub

La instrucción If TypeOf:

La instrucción If TypeOf permite comprobar el tipo de objeto.

Sub ControlProcessor(MiControl As Control)
    If TypeOf MiControl Is CommandButton Then
        Debug.Print "Ha pasado un " & TypeName(MiControl)
    ElseIf TypeOf MiControl Is CheckBox Then
        Debug.Print "Ha pasado un " & TypeName(MiControl)
    ElseIf TypeOf MiControl Is TextBox Then
        Debug.Print "Ha pasado un " & TypeName(MiControl)
    End If
End Sub

La instrucción Set:

La instrucción Set nos permite atribuir la referencia de un objeto a una variable, llamada variable objeto.

Sub ModificarHoja()
Dim Libro As Workbook
Dim Hoja As Worksheet
 
Set Libro = Application.Workbooks![Presupuesto.xls]
Set Hoja = Libro.Worksheets![Presupuesto2011]
    With Hoja
        .Name = "Ventas 2011"
        .Range("A2") = "Ventas del año 2011"
    End With
Set Hoja = Nothing
End Sub
 

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.