Excel VBA: Nastavenie premennej na hodnotu bunky (3 praktické príklady)

  • Zdieľajte To
Hugh West

V tomto článku vám ukážem, ako môžete nastaviť premennú na hodnotu bunky pomocou VBA V programe Excel sa naučíte nastaviť premennú na hodnotu jednej bunky a rozsahu buniek.

Stiahnite si cvičebnicu

Stiahnite si tento cvičebný zošit, aby ste si počas čítania tohto článku precvičili svoje zručnosti.

Nastavenie premennej na Cell.xlsm

3 rýchle príklady na nastavenie premennej na hodnotu bunky v programe Excel

Tu máme súbor údajov, ktorý obsahuje mená niektorých zákazníkov , ich kontaktné čísla a e-mailové adresy v dosahu B3:D13 pracovného hárku.

Snažíme sa nastaviť premenné na hodnoty buniek z tohto súboru údajov pomocou VBA .

1. Nastavenie premennej na hodnotu jednej bunky pomocou programu Excel VBA

Najprv sa naučíme nastaviť premennú na hodnotu jednej bunky pomocou VBA .

Nastavme napríklad hodnotu bunky B4 do premennej s názvom Názov_zákazníka .

Je lepšie, ak poznáte dátový typ hodnoty a deklarujete ho predtým. A potom nastavte hodnotu v tejto premennej.

Napríklad tu je bunka B4 obsahuje názov, Boris Pasternak . Je to typ reťazca Preto môžete použiť túto premennú 2 riadkov kódov:

 Dim Value As String Value = Range("B4") 

Ak si však nie ste istí typom údajov, nič sa nedeje. V takom prípade napíšte len 2. riadok a VBA prečíta hodnotu správne.

 Hodnota = Rozsah("B4") 

Teraz skontrolujte, či VBA prečítal hodnotu správne alebo nie, zadajte riadok MsgBox Hodnota s jednou z týchto dvoch súprav kódov a potom spustite kód.

Zobrazí sa okno so správou o hodnote bunky B4 , Boris Pasternak .

2. Nastavenie hodnôt susedného rozsahu buniek do premennej pomocou Excel VBA

Teraz nastavíme hodnoty susedného rozsahu buniek do premennej. Napríklad prečítajme rozsah B3:D13 do premennej Rng .

Tu bude dátový typ premennej a Rozsah . Môžete to deklarovať buď takto:

 Dim Rng As Range Set Rng = Range("B3:D13") 

Alebo môžete hodnoty priradiť priamo pomocou neho.

 Set Rng = Range("B3:D13") 

Ak chcete získať prístup k hodnotám Objekt rozsahu , musíte k nim pristupovať s číslami riadkov a stĺpcov pomocou Objekt buniek .

Napríklad na prístup k bunke B4 , musíte použiť Rng.Cells(2,1) [ Bunky B4 je v 2. riadok a 1. stĺpec rozsahu B3:D13 .]

Zadajte riadok MsgBox Rng.Cells(2,1) vo svojom kóde a spustite ho. Zobrazí sa Boris Pasternak , hodnota v bunke B4 .

3. Nastavenie hodnôt nesusedného rozsahu buniek do premennej pomocou Excel VBA

Nakoniec nastavíme hodnoty nesusedného rozsahu buniek do premennej.

Skúsme napríklad prečítať rozsah B3:B13 a D3:D13 do premennej s názvom Rng .

Je to opäť dátový typ Rozsah . Môžete to oznámiť vopred alebo nie.

Použijeme Metóda Únie z VBA pripojiť sa 2 alebo viac nesusedných rozsahov buniek do jedného rozsahu.

 Dim Rng As Range Set Range = Union(Range("B3:B13"), Range("D3:D13") 

Teraz na prístup k bunke B4 , musíte opäť zadať riadok MsgBox Rng.Cells(1,1). Ak potom spustíme kód, zobrazí sa obsah bunky B4 , Boris Pasternak .

Čo si treba zapamätať

Všetky vyššie opísané metódy fungujú len pre aktívny pracovný hárok. Ak chcete získať prístup k pracovnému hárku, ktorý nie je aktívny, musíte pred rozsahom uviesť názov pracovného hárku.

Napríklad na prístup k rozsahu B4 z List1 , musíte použiť:

 Value = Worksheets("Sheet1").Range("B4") 

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.