Prihláste sa s kontom Microsoft
Prihláste sa alebo si vytvorte konto.
Dobrý deň,
Vyberte iné konto.
Máte viacero kont
Vyberte konto, s ktorým sa chcete prihlásiť.

Súhrn

Tento článok obsahuje vzorové postupy jazyka Microsoft Visual Basic for Applications, ktoré môžete použiť na prácu s niekoľkými typmi polí.

Ďalšie informácie

Spoločnosť Microsoft poskytuje príklady programovania len na ilustráciu bez záruky vyjadrenej alebo implicitnej. To zahŕňa, ale nie je obmedzená na implicitné záruky obchodovateľnosti alebo vhodnosti na konkrétny účel. V tomto článku sa predpokladá, že poznáte predvedený programovací jazyk a nástroje, ktoré sa používajú na vytváranie a ladenie postupov. Technickí inžinieri spoločnosti Microsoft môžu pomôcť vysvetliť funkčnosť konkrétneho postupu, ale tieto príklady neupravia tak, aby poskytovali ďalšie funkcie alebo vytvárali postupy na splnenie vašich konkrétnych požiadaviek. POZNÁMKA: V procedúrach jazyka Visual Basic for Applications sú slová za apostrofom (') komentármi.
 

Vyplnenie poľa a jeho následné skopírovanie do hárka

  1. Otvorte nový zošit a vložte hárok modulu jazyka Visual Basic.

  2. Do hárka modulu zadajte nasledujúci kód.

    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.Transpose(myarray)
    End Sub
    
  3. Vyberte položku Hárok1.

  4. V ponuke Nástroje ukážte na položku Makro a potom kliknite na položku Makrá.

  5. V dialógovom okne Makro kliknite na položku Sheet_Fill_Array a potom na položku Spustiť.

Prevzatie hodnôt z hárka a vyplnenie poľa

  1. Zadajte hodnoty do hárka Hárok1 do buniek A1:A10.

  2. Do hárka modulu jazyka Visual Basic zadajte nasledujúci kód:

    Sub from_sheet_make_array()
       Dim thisarray As Variant
       thisarray = Range("a1:a10").Value
    
       counter = 1                'looping structure to look at array
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  3. Vyberte položku Hárok1.

  4. V ponuke Nástroje ukážte na položku Makro a potom kliknite na položku Makrá.

  5. V dialógovom okne Makro kliknite na položku from_sheet_make_array a potom na položku Spustiť.

Odovzdanie a prijatie poľa

  1. V hárku modulu zadajte nasledujúci kód:

    Sub pass_array()
       Dim thisarray As Variant
       thisarray = Selection.Value
       receive_array (thisarray)
    End Sub
    
    Sub receive_array(thisarray)
       counter = 1
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  2. Vyberte hárok1 a zvýraznite rozsah A1:A10.

  3. V ponuke Nástroje ukážte na položku Makro a potom kliknite na položku Makrá.

  4. V dialógovom okne Makro kliknite na položku pass_array a potom na položku Spustiť.

Porovnanie dvoch polí

  1. Vytvorte dva pomenované rozsahy v hárku Hárok1. Pomenujte jeden rozsah1 a druhý rozsah2.

    Zvýraznite napríklad rozsah buniek A1:A10 a pomenujte ho rozsah1. zvýraznite rozsah buniek B1:B10 a pomenujte ho rozsah2.

  2. Do hárka modulu zadajte nasledujúci kód.

    Sub compare_two_array()
       Dim thisarray As Variant
       Dim thatarray As Variant
    
       thisarray = Range("range1").Value
       thatarray = Range("range2").Value
       counter = 1
       While counter <= UBound(thisarray)
          x = thisarray(counter, 1)
          y = thatarray(counter, 1)
          If x = y Then
             MsgBox "yes"
          Else MsgBox "no"
          End If
          counter = counter + 1
       Wend
    End Sub
    
  3. Vyberte hárok2.

  4. V ponuke Nástroje ukážte na položku Makro a potom kliknite na položku Makro.

  5. V dialógovom okne Makro kliknite na položku compare_two_array a potom na položku Spustiť.

    Zobrazí sa jedno okno hlásenia pre každé porovnanie.

Vyplnenie dynamického poľa

  1. V hárku modulu zadajte nasledujúci kód:

    Sub fill_array()
    
       Dim thisarray As Variant
       number_of_elements = 3     'number of elements in the array
    
       'must redim below to set size
       ReDim thisarray(1 To number_of_elements) As Integer
       'resizes this size of the array
       counter = 1
       fillmeup = 7
       For counter = 1 To number_of_elements
          thisarray(counter) = fillmeup
       Next counter
    
       counter = 1         'this loop shows what was filled in
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter)
          counter = counter + 1
       Wend
    
    End Sub
    
  2. V ponuke Nástroje ukážte na položku Makro a potom kliknite na položku Makrá.

  3. V dialógovom okne Makro kliknite na položku fill_array a potom na položku Spustiť.

POZNÁMKA: Zmena premennej "number_of_elements" určí veľkosť poľa.
 

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.

Komunity pomôžu s kladením otázok a odpovedaním na ne, s poskytovaním pripomienok a so získavaním informácií od odborníkov s bohatými znalosťami.

Boli tieto informácie užitočné?

Aká je podľa vás jazyková kvalita textu?
Čo sa vám páčilo, prípadne čo nie?
Stlačením tlačidla Odoslať sa vaše pripomienky použijú na zlepšenie produktov a služieb spoločnosti Microsoft. Váš správca IT bude môcť tieto údaje zhromažďovať. Vyhlásenie o ochrane osobných údajov.

Ďakujeme za vaše pripomienky!

×