Kazalo
Preverite, ali list obstaja
Ustvarili smo funkcijo, ki bo preizkusila, ali list ali obseg (na določenem listu) obstaja. Test obsega je uporaben, če želite preveriti, ali na listu obstaja določeno imenovano območje.
123456789101112 | "Preizkusite, če obseg obstaja na listu.'Pustite območje prazno, da preizkusite, ali list obstaja'Vhodi:'WhatSheet - Ime niza lista (ex "Sheet1")'WhatRange (izbirno, privzeto = "A1") - Ime niza obsega (npr. "A1")Funkcija RangeExists (WhatSheet As String, Izbirno ByVal WhatRange As String = "A1") Kot BooleanZatemni preskus kot obsegOn Napaka Nadaljuj NaprejNastavi test = ActiveWorkbook.Sheets (WhatSheet) .Range (WhatRange)RangeExists = Err.Number = 0Pri napaki Pojdi na 0Končana funkcija |
Funkcijo postavite v kodni modul VBA in do nje lahko dostopate z uporabo naslednjih podprocedura:
Preverite, ali list obstaja
123 | Sub Test_SheetExists ()MsgBox RangeExists ("nastavitev")End Sub |
Preverite, ali obseg obstaja na listu
123 | Sub Test_RangeExists ()MsgBox RangeExists ("setup", "rngInput")End Sub |
Prilagajanje funkcije RangeExists
Preverite, ali list obstaja v drugem delovnem zvezku
Zgornja funkcija je pregledala ActiveWorkbook (trenutno aktivni delovni zvezek). Namesto tega lahko funkcijo prilagodite tako, da si ogledate določen delovni zvezek, kot je ta:
12345678910111213 | "Preizkusite, če obseg obstaja na listu.'Pustite območje prazno, da preizkusite, ali list obstaja'Vhodi:'WhatBook - *predmet delovnega zvezka *'WhatSheet - Ime niza lista (ex "Sheet1")'WhatRange (izbirno, privzeto = "A1") - Ime niza obsega (npr. "A1")Obseg funkcij Obstoja (WhatBook kot delovni zvezek, WhatSheet kot niz, neobvezno ByVal WhatRange As String = "A1") Kot BooleanZatemni preskus kot obsegOn Napaka Nadaljuj NaprejSet test = WhatBook.Sheets (WhatSheet) .Range (WhatRange)RangeExists = Err.Number = 0Pri napaki Pojdi na 0Končana funkcija |
Izvajanje:
1234567 | Sub Test_WBSheet_Exists ()Dim wb Kot delovni zvezekNastavite wb = ActiveWorkbookMsgBox RangeExists (wb, "Sheet1")End Sub |