Fylle et celle med verdier

February 7  by Eliza

Jonathan er å skape en makro og trenger å fylle et celle med verdier. For eksempel, hvis han trenger å fylle området A1: C1, tar det i dag tre utsagn for å fylle dette området:

Range ("A1") = "Test1"
Range ("B1") = "Test2"
Range ("C1") = "Test3"

Han lurer på om det er en måte å fylle dem i en enkelt setning, ligner på følgende:

Range ("A1: C1") = ("Test1", "Test2", "Test3")

Jonathans ønsket syntaks nære, men det vil ikke fungere. Her er hvordan det vil fungere:

Range ("A1: C1") = Array ("Test1", "Test2", "Test3")

Legg merke til at bruk av Array setningen, som forteller VBA at det som følger skal betraktes som en sekvens av verdier som skal anvendes i sekvensen av celler til venstre for operatøren. Interessant nok, kan du stappe verdier inn variabler og også bruke Array uttalelse, som vist her:

Sone = "Epler"
sTwo = "Appelsiner"
sThree = "artisjokker"
Range ("A1: C1") = Array (Sone, sTwo, sThree)

Du kan også arbeide med rette variabler, hvis du foretrekker:

Dim sMyStrings (2) Som String
sMyStrings (0) = "Epler"
sMyStrings (1) = "Appelsiner"
sMyStrings (2) = "artisjokker"
Range ("A1: C1") = sMyStrings

Koden ovenfor kan også skrives om, som følger:

Dim sMyStrings (2) Som String
sMyStrings = Array ("Epler", "Appelsiner", "artisjokker")
Range ("A1: C1") = sMyStrings

Til slutt, hvis du ønsket å ha verdiene plassert inn i en enkelt kolonne snarere enn på rad, ville du trenger å bruke Transponere funksjon, på denne måten:

Range ("A1: A3") = Application.Transpose (Array ("Test1", "Test2", "Test3"))

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (11701) gjelder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Excel (Excel 2007 og senere) her: Fylle et celle med verdier.