VBA nadomestni znaki

Ta vadnica bo pokazala, kako uporabljati nadomestne znake v VBA.

Nadomestni znaki se uporabljajo v vseh programskih jezikih in aplikacijah zbirk podatkov, kot je SQL Server. Nadomestni znak je mogoče opredeliti kot simbol, ki se uporablja za zamenjavo enega ali več znakov v besedilnem nizu. Na primer, ta besedilni niz - "mo*" - bo našel besede mama, miška, los, mamica itd .; medtem ko je ta besedilni niz "mo?" ali bo kot nadomestni znak našla samo besedo mama? nadomesti samo en znak.

Z operaterjem Like uporabljamo nadomestne znake, kar je lažja alternativa VBA Regexu.

Uporaba nadomestnega znaka Asterix (*) v VBA

Nadomestni znak Asterix nadomesti enega ali več znakov v nizu VBA.

Oglejmo si naslednji obseg celic v Excelu:

Z uporabo nadomestnega znaka Asterix v kodi VBA lahko najdemo vsa imena, ki se začnejo z "M" in spremenijo barvo besedila v rdečo.

12345678 Podključek za preverjanje ()Dim x kot celo številoZa x = 3 do 8Če Range ("B" & x) .Vrednost kot "M*" PotemObseg ("B" & x). Font.Color = vbRedKonec ČeNaslednji xEnd Sub

Zato smo prebrali obseg in našli vsa imena, ki se začnejo s črko M, saj je naš nadomestni niz "M*

Rezultat izvajanja zgornje kode je prikazan spodaj.

Če bi uporabili nadomestni niz "Ma*" - bi se spremenila samo imena v B3 in B4.

Uporaba nadomestnega znaka vprašanj (?) V VBA

Vprašalnik bo nadomestil en sam znak v nizu VBA.

Upoštevajte naslednje podatke:

Z nadomestnim nizom »? Im« lahko poiščemo vsa imena, ki se končajo na »im«

12345678 Sub CheckForIM ()Dim x kot celo številoZa x = 3 do 8Če Range ("B" & x) .Vrednost kot "? Im" PotemObseg ("B" & x). Font.Color = vbRedKonec ČeNaslednji xEnd Sub

Rezultat te kode je prikazan spodaj:

Uporaba [char list] kot nadomestnega znaka

Zgornji primer lahko rahlo spremenimo, da lahko poleg seznama znakov dovoljenih znakov uporabimo tudi vprašaj. Nadomestni niz je zato mogoče spremeniti v »? [E-i] m«, kjer je lahko prvi znak karkoli, drugi znak mora biti znak med e in i, zadnja črka pa mora biti znak »m«. Dovoljeni so samo 3 znaki.

12345678 Sub CharListTest ()Dim x kot celo številoZa x = 3 do 8Če Range ("B" & x) .Vrednost kot "? [E-i] m" PotemRazpon ("B" & x). Font.Color = vbRedKonec ČeNaslednji xEnd Sub

Rezultat te kode bi bil:

Programiranje VBA | Generator kod deluje za vas!

Uporaba hash (#) nadomestnega znaka v VBA

Nadomestni znak hash (#) nadomesti enomestno številko v nizu VBA. Lahko se ujemamo med 0 in 9.

12345678910 Sub CheckForNumber ()Dim x kot celo število, y kot celo številoZa x = 3 do 8Za y = 2 do 5Če ActiveSheet.Cells (x, y) Všeč mi je "##" PotemActiveSheet.Cells (x, y). Font.Color = vbRedKonec ČeNaslednji yNaslednji xEnd Sub

Zgornja koda bo krožila skozi vse celice v obsegu (»B3: E8«) in spremenila barvo besedila v celici v RDEČO, če je v tej celici dvomestno število.

V spodnjem primeru bo koda spremenila le številko, če je zadnja številka 9.

12345678910 Sub CheckFor9 ()Dim x kot celo število, y kot celo številoZa x = 3 do 8Za y = 2 do 5Če ActiveSheet.Cells (x, y) Všeč mi je "#9" PotemActiveSheet.Cells (x, y). Font.Color = vbRedKonec ČeNaslednji yNaslednji xEnd Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave