Sisukord
Töötades koos Microsoft Excel , mõnikord peame leidma sobiva väärtuse vahemikus. Seda saame hõlpsasti teha exceli funktsioonide abil. VBAs on funktsioone, mida võime kasutada, kuid ükski neist ei ole võrdväärne MATCH Selles artiklis õpime, kuidas sobitada väärtust vahemikus koos Excel VBA .
Lae alla praktiline töövihik
Võite alla laadida töövihiku ja nendega harjutada.
VBA Match Value in Range.xlsmSissejuhatus Exceli VBA sobitusfunktsioonile
The Match funktsioon Excel VBAs on kasulik konstrueeritud otsingufunktsioon, mis nagu ka VLOOKUP , HLOOKUP ja INDEX funktsioonid, tagastab massiividest või andmebaasist saadud otsinguväärtuste identsete või võrreldavate kokkulangevuste asukoha. See funktsioon on töölehe funktsioon, mida programm kasutab. Kuna tegemist on töölehe funktsiooniga, on Match funktsiooni parameetrid sarnased töölehe funktsiooni parameetritega.
3 näidet Exceli VBA-st, et sobitada väärtus vahemikus olevale väärtusele
1. VBA Match funktsiooniga VBA Match väärtus vahemikus Excelis
Kasutada Exceli VBA Match funktsioon , et leida sobiva väärtuse vahemikus, kasutame järgmist andmestikku. Andmestikus on mõned õpilaste nimed veerus C , oma hinded konkreetsel teemal veerus D ja iga õpilase järjekorranumber veerus B Oletame nüüd, et me tahame leida sobiva positsiooni lahtris G5 konkreetse märgi kohta ja märk, millele me tahame sobitada, on lahtris F5 .
Näitame protseduuri, et leida sobivad väärtused vahemikus, kasutades excel VBA Match funktsiooni .
SAMMUD:
- Kõigepealt minge Arendaja vahekaart lindilt.
- Teiseks, klõpsake Visual Basic avada Visual Basic toimetaja , kuhu me kirjutame koodi. Või vajutage Alt + 11 avada Visual Basic toimetaja .
- Teine võimalus avada Visual Basic toimetaja on lihtsalt paremklikk töölehel ja klõpsake nuppu Vaata koodi .
- See avab Visual Basic toimetaja Nüüd kirjutage kood sinna.
VBA kood:
Sub example1_match() Range("G5").Value = WorksheetFunction.Match(Range("F5").Value, Range("D5:D10"), 0) End Sub
- Pärast seda vajutage koodi käivitamiseks nuppu F5 klaviatuuril või klõpsake klahvi Rub Sub nupp.
- Lõpuks näete, et vaste on leitud positsioonis 5 .
🔎 Kuidas VBA-kood töötab?
Sub example1_match()
: See tähendab, et me defineerime alamprotseduuri, andes makro nime.Range("G5").Value
: Me tahame, et väljund salvestatakse lahtrisse G5 .TöölehtFunktsioon
: Selle koodi abil saame juurdepääsu VBA funktsioonidele.
Match(Range("F5").Value, Range("D5:D10"), 0)
: Siinkohal kasutame funktsioon Match VBA-s. Kuna me tahame võtta väärtuse lahtrist F5 ja leida positsioon vahemikus D5:D10 .End Sub
: See tähendab, et me lõpetame menetluse.
Loe edasi: Exceli VBA, et sobitada string veergu (5 näidet)
2. Excel VBA kasutamine teise töölehe väärtuse sobitamiseks
Me võime leida sobivad väärtused vahemikus teiselt töölehelt, kasutades selleks VBA Match funktsioon aadressil Excel Oletame, et meil on andmekogum lehel nimega " Andmed " ja me tahame, et tulemus oleks lehe nimes " Tulemus ". Ja me kasutame sama andmestikku. Järgime nüüd samu samme, et seda teha.
SAMMUD:
- Alguses lähevad samamoodi nagu eelmises näites, lähevad Arendaja vahekaart lindil.
- Seejärel klõpsake nuppu Visual Basic või vajutage Alt + F11 avada Visual Basic toimetaja .
- Selle asemel, et avada Visual Basic toimetaja , lihtsalt klõpsake lehel paremal hiireklõpsuga ja valige Vaata koodi .
- Nüüd kirjutage üles VBA-kood.
VBA kood:
Sub example2_match() Sheets("Result").Range("C5").Value = WorksheetFunction.Match(Sheets("Result").Range("C5").Value, Sheets("Data").Range("D5:D10"), 0) End Sub
- Seejärel käivitage kood, vajutades F5 klahvi või klõpsates Run Sub nuppu.
- Ja, tulemus on leitud " Tulemus " leht.
Loe edasi: Kuidas sobitada andmeid Excelis 2i töölehtedelt
Sarnased lugemised
- Summa kõik vasted VLOOKUPiga Excelis (3 lihtsat viisi)
- Kuidas leida Excelis Case Sensitive Match ( 6 valemit)
- Kuidas sobitada nimesid Excelis, kus õigekiri erineb (8 meetodit)
3. Exceli VBA silmused sobiva väärtuse saamiseks vahemikus
Oletame, et soovime, et mitu märki vastaks väärtusele, siis kasutame selleks VBA silmuseid. Kasutame sama andmestikku nagu enne. Nüüd soovime, et vaste positsioon oleks veerus G ja märgid, millele me tahame leida vasteid, on veerus F Vaatame astmed alla.
SAMMUD:
- Kõigepealt minge paelalt menüüsse Arendaja vahekaart.
- Teiseks, et avada Visual Basic toimetaja , kliki Visual Basic või vajutage Alt + F11 .
- Või lihtsalt tehke lehel paremklõps ja valige Vaata koodi .
- See avab Visual Basic toimetaja .
- Nüüd kirjutage kood sinna.
VBA kood:
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
- Pärast seda vajutades F5 klahvi või klõpsates Run Sub nupp käivitab koodi.
- Ja te näete tulemust veerus G .
🔎 Kuidas VBA-kood töötab?
For i = 5 kuni 8
: See tähendab, et me tahame, et silmus jookseks alates reast 5 ja lõpetades reaga 8 .Cells(i, 7).Value
: See salvestab iga rea resultatiivsete asukohtade väärtuse alates 5 aadressile 8 read veerus G mis on veeru number 7 .Match(Cells(i, 6).Value, Range("D5:D10"), 0)
: Rakke saab sobitada, kasutades Match funktsioon (i, 6). Väärtuste otsing iga Lookup-väärtuse kohta, mis on leitud ridades 5 läbi 8 kohta 6. veerus. Seejärel otsitakse massiivi D5:D10 excel'ilehel, kus andmed on kättesaadavad.
Loe edasi: Excel Leia sobivad väärtused kahes veerus
Asjad, mida silmas pidada
- Kui vaste tüüp puudub või seda ei ole määratud, eeldatakse, et see on 1 .
- Kui vastavust ei tuvastata, on seotud Exceli väli tühi.
- Otsinguväärtus võib olla numbriline, märgiline või loogiline väärtus või lahtri viide kogusele, tekstile või loogilisele tähendusele.
Kokkuvõte
Ülaltoodud meetodid aitavad teil sobitada väärtusi vahemikus Excel VBA-s. Loodan, et see aitab teid! Kui teil on küsimusi, ettepanekuid või tagasisidet, andke meile teada kommentaaride sektsioonis. Või võite heita pilgu meie teistesse artiklitesse aadressil ExcelWIKI.com blogi!