Macros (I)
Microsoft proporciona ejemplos de programación sólo como ilustración, sin ninguna garantía ya sea expresa o implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. En este artículo se da por supuesto que ya conoce el lenguaje de programación que se muestra, así como las herramientas empleadas para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas.
Rellenar una matriz y copiarla en una hoja de cálculo
- Abra un libro nuevo.
- Presione Alt+F11 para ejecutar el Editor de Visual Basic.
- En el menú Insertar, haga clic en Módulo.
- Escriba el siguiente código en la hoja de módulo:
Sub Sheet_Fill_Array()
Dim myarray As Variant
myarray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
Range(“a1:a10”).Value = Application.WorksheetFunction.Transpose(myarray)
End Sub
- En el menú Archivo, haga clic en Cerrar y volver a Microsoft Excel.
- Seleccione Sheet1.
- En el menú Herramientas, seleccione Macro y, a continuación, haga clic en Macros.
- En el cuadro de diálogo Macro, haga clic en Sheet_Fill_Array y, a continuación, haga clic en Ejecutar.
Para tomar los valores de una hoja de cálculo y rellenar la matriz
- Abra un libro nuevo y escriba valores en las celdas A1:A10 de Sheet1.
- Presione Alt+F11 para ejecutar el Editor de Visual Basic.
- En el menú Insertar, haga clic en Módulo.
- Escriba el siguiente código en la hoja de módulo:
Sub From_sheet_make_array()
Dim myarray As Variant
myarray = Range(“a1:a10”).Value
‘Looping structure to look at array.
For i = 1 To UBound(myarray)
MsgBox myarray(i, 1)
Next
End Sub
- En el menú Archivo, haga clic en Cerrar y volver a Microsoft Excel.
- Seleccione Sheet1.
- En el menú Herramientas, seleccione Macro y, a continuación, haga clic en Macros.
- En el cuadro de diálogo Macro, haga clic en From_sheet_make_array y, a continuación, haga clic en Ejecutar.
Pasar y recibir una matriz
- Abra un libro nuevo.
- Presione Alt+F11 para ejecutar el Editor de Visual Basic.
- En el menú Insertar, haga clic en Módulo.
- Escriba el siguiente código en la hoja de módulo:
Sub Pass_array()
Dim myarray As Variant
myarray = Range(“a1:a10”).Value
receive_array myarray
End Sub
Sub receive_array(thisarray)
For i = 1 To UBound(myarray)
MsgBox myarray(i, 1)
Next
End Sub
- En el menú Archivo, haga clic en Cerrar y volver a Microsoft Excel.
- Seleccione Sheet1 y resalte el rango A1:A10.
- En el menú Herramientas, seleccione Macro y, a continuación, haga clic en Macros.
- En el cuadro de diálogo Macro, haga clic en Pass_array y, a continuación, haga clic en Ejecutar.
Fuente: microsoft.com