Obsah
Pri práci s Microsoft Excel , niekedy potrebujeme nájsť zhodnú hodnotu v rozsahu. To môžeme ľahko urobiť pomocou funkcií Excelu. Vo VBA existujú funkcie, ktoré môžeme použiť, ale žiadna z nich sa nerovná MATCH V tomto článku sa naučíme, ako priradiť hodnotu v rozsahu pomocou Excel VBA .
Stiahnite si cvičebnicu
Môžete si stiahnuť pracovný zošit a precvičovať s nimi.
VBA Zhoda hodnoty v Range.xlsmÚvod do funkcie Excel VBA Match
Stránka Funkcia zápasu v programe Excel VBA je užitočná funkcia vyhľadávania, ktorá podobne ako VLOOKUP , HLOOKUP a INDEX funkcie, vracia miesto zhodnej alebo porovnateľnej zhody vyhľadaných hodnôt v poliach alebo v databáze. Táto funkcia je funkciou pracovného hárka, ktorú program používa. Keďže ide o funkciu pracovného hárka, parametre funkcie Zhoda sú podobné ako parametre funkcie pracovného hárka.
3 príklady Excel VBA na porovnanie hodnoty v rozsahu
1. Zhoda hodnoty v rozsahu pomocou funkcie VBA Match v programe Excel
Používanie funkcia Excel VBA Match , na nájdenie zhodnej hodnoty v rozsahu použijeme nasledujúci súbor údajov. Súbor údajov obsahuje v stĺpci mená niektorých študentov C , ich známky z konkrétneho predmetu v stĺpci D a poradové číslo každého študenta v stĺpci B Teraz predpokladajme, že chceme nájsť pozíciu zhody v bunke G5 konkrétnej značky a značka, ktorú chceme porovnať, sa nachádza v bunke F5 .
Ukážme si postup vyhľadávania zhodných hodnôt v rozsahu pomocou funkcie Excel VBA Match .
KROKY:
- Najprv prejdite na Vývojár na páse kariet.
- Po druhé, kliknite na Visual Basic otvoriť Editor jazyka Visual Basic , kde napíšeme kód. Alebo stlačte Alt + 11 otvoriť Editor jazyka Visual Basic .
- Ďalší spôsob otvorenia Editor jazyka Visual Basic je len na kliknutie pravým tlačidlom myši na na pracovnom hárku a kliknite na Zobraziť kód .
- Tým sa otvorí Editor jazyka Visual Basic . Teraz tam napíšte kód.
Kód VBA:
Sub example1_match() Range("G5").Value = WorksheetFunction.Match(Range("F5").Value, Range("D5:D10"), 0) End Sub
- Ak chcete spustiť kód, stlačte tlačidlo F5 na klávesnici alebo kliknite na Rub Sub tlačidlo.
- Nakoniec môžete vidieť, že zhoda sa nachádza na pozícii 5 .
🔎 Ako funguje kód VBA?
Sub example1_match()
: To znamená, že podprocedúru definujeme uvedením názvu makra.Range("G5").Value
: Chceme, aby sa výstup uložil do bunky G5 .WorksheetFunction
: Pomocou tohto kódu budeme mať prístup k funkciám VBA.
Match(Range("F5").Value, Range("D5:D10"), 0)
: Tu používame funkcia Match Keďže chceme prevziať hodnotu z bunky F5 a zistiť polohu v rozsahu D5:D10 .Koniec Sub
: To znamená, že postup ukončíme.
Čítajte viac: Excel VBA na porovnanie reťazca v stĺpci (5 príkladov)
2. Použitie programu Excel VBA na porovnanie hodnoty z iného pracovného hárka
Môžeme nájsť zhodné hodnoty v rozsahu z iného pracovného hárka pomocou funkcia VBA Match na stránke Excel Predpokladajme, že máme súbor údajov v hárku s názvom " Údaje " a chceme, aby bol výsledok v názve listu " Výsledok " A používame ten istý súbor údajov. Teraz postupujme podľa krokov, ako to urobiť.
KROKY:
- Na začiatku, rovnako ako v predchádzajúcom príklade, prejdite na Vývojár na páse kariet.
- Potom kliknite na Visual Basic alebo stlačte Alt + F11 otvoriť Editor jazyka Visual Basic .
- Namiesto toho, aby ste otvorili Editor jazyka Visual Basic , jednoducho kliknite pravým tlačidlom myši na hárok a vyberte položku Zobraziť kód .
- Teraz zapíšte kód VBA.
Kód VBA:
Sub example2_match() Sheets("Result").Range("C5").Value = WorksheetFunction.Match(Sheets("Result").Range("C5").Value, Sheets("Data").Range("D5:D10"), 0) End Sub
- Potom spustite kód stlačením tlačidla F5 alebo kliknutím na tlačidlo Run Sub tlačidlo.
- Výsledok sa nachádza v časti " Výsledok " hárok.
Prečítajte si viac: Ako porovnať údaje v programe Excel z 2 pracovných hárkov
Podobné čítania
- Súčet všetkých zhodných hodnôt pomocou VLOOKUP v programe Excel (3 jednoduché spôsoby)
- Ako nájsť zhodu citlivú na veľkosť písmen v programe Excel ( 6 vzorcov)
- Ako priradiť mená v programe Excel, ak sa líšia v pravopise (8 metód)
3. Cykly Excel VBA na získanie zodpovedajúcej hodnoty v rozsahu
Predpokladajme, že chceme, aby sa hodnota zhodovala s viacerými značkami, použijeme na to slučky VBA. Používame rovnaký súbor údajov ako predtým. Teraz chceme, aby sa pozícia zhody v stĺpci G a značky, ktorým chceme nájsť zhodu, sú v stĺpci F . Pozrime sa na kroky dole.
KROKY:
- Najprv na páse prejdite na položku Vývojár tab.
- Po druhé, otvoriť Editor jazyka Visual Basic , kliknite na Visual Basic alebo stlačte Alt + F11 .
- Alebo jednoducho kliknite pravým tlačidlom myši na hárok a vyberte položku Zobraziť kód .
- Tým sa otvorí Editor jazyka Visual Basic .
- Teraz tam zadajte kód.
Kód VBA:
Sub example3_match() Dim i As Integer For i = 5 To 8 Cells(i, 7).Value = WorksheetFunction.Match(Cells(i, 6).Value, Range("D5:D10"), 0) Next i End Sub
- Potom stlačením tlačidla F5 alebo kliknutím na tlačidlo Run Sub Tlačidlo spustí kód.
- Výsledok sa zobrazí v stĺpci G .
🔎 Ako funguje kód VBA?
Pre i = 5 až 8
: To znamená, že chceme, aby cyklus začal riadkom 5 a končí riadkom 8 .Cells(i, 7).Value
: Tým sa uloží hodnota výsledných miest v každom riadku z 5 na 8 riadky v stĺpci G čo je číslo stĺpca 7 .Match(Cells(i, 6).Value, Range("D5:D10"), 0)
: Bunky možno priradiť pomocou Zápas funkcia (i, 6). Hodnoty hľadajú každú hodnotu Lookup nájdenú v riadkoch 5 prostredníctvom stránky . 8 z 6. stĺpec. Potom sa hľadá v poli D5:D10 na hárku Excel, kde sú k dispozícii údaje.
Prečítajte si viac: Excel Nájsť zhodné hodnoty v dvoch stĺpcoch
Čo treba mať na pamäti
- Ak typ zhody chýba alebo nie je uvedený, predpokladá sa, že je to 1 .
- Ak sa nezistí žiadna zhoda, súvisiace pole excel bude prázdne.
- Hodnota vyhľadávania môže byť číselný, znakový alebo logický údaj alebo odkaz na bunku s množstvom, textom alebo logickým významom.
Záver
Vyššie uvedené metódy vám pomôžu pri porovnávaní hodnôt v rozsahu v programe Excel VBA. Dúfam, že vám to pomôže! Ak máte akékoľvek otázky, návrhy alebo spätnú väzbu, dajte nám vedieť v sekcii komentárov. Alebo sa môžete pozrieť na naše ďalšie články v ExcelWIKI.com blog!