Llenado de un rango de celdas con valores (Microsoft Excel)
Jonathan está creando una macro y necesita llenar un rango de celdas con valores. Por ejemplo, si necesita llenar el rango A1: C1, actualmente se necesitan tres declaraciones para llenar ese rango:
Range("A1") = "Test1" Range("B1") = "Test2" Range("C1") = "Test3"
Se pregunta si hay alguna forma de completarlos en una sola declaración, similar a la siguiente:
Range("A1:C1") = ("Test1","Test2","Test3")
La sintaxis deseada por Jonathan está cerca, pero no funcionará. Así es como funcionará:
Range("A1:C1") = Array("Test1","Test2","Test3")
Tenga en cuenta el uso de la instrucción Array, que le dice a VBA que lo que sigue debe considerarse una secuencia de valores que se usará en la secuencia de celdas a la izquierda del operador. Curiosamente, podría introducir valores en variables y también usar la instrucción Array, como se muestra aquí:
sOne = "Apples" sTwo = "Oranges" sThree = "Artichokes" Range("A1:C1") = Array(sOne, sTwo, sThree)
También puede trabajar con variables directas, si lo prefiere:
Dim sMyStrings(2) As String sMyStrings(0) = "Apples" sMyStrings(1) = "Oranges" sMyStrings(2) = "Artichokes" Range("A1:C1") = sMyStrings
El código anterior también podría reescribirse de la siguiente manera:
Dim sMyStrings(2) As String sMyStrings = Array("Apples", "Oranges", "Artichokes") Range("A1:C1") = sMyStrings
Finalmente, si quisiera tener los valores colocados en una sola columna en lugar de en una fila, necesitaría usar la función Transponer, de esta manera:
Range("A1:A3") = Application.Transpose(Array("Test1","Test2","Test3"))
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (11702) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.
Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:
link: / excel-Filling_a_Range_of_Cells_with_Values [Llenando un rango de celdas con valores]
.