Objektum szükséges hiba áttekintése
Ez az oktatóanyag segít elhárítani az objektum szükséges hibáit a VBA -ban.
<
<
Objektumok áttekintése
A VBA -ban az objektum olyan „dolog”, mint egy munkalap, munkafüzet, tartomány, alakzat, sor, oszlop, felhasználói forma, vezérlő stb.
Az objektumoknak vannak tulajdonságaik (pl .: név, szín, rejtett) és metódusok (pl. Nyitott, törlés, mentés, elrejtés). Ha egy tulajdonságot vagy metódust kíván alkalmazni, a VBA -nak érvényes objektumra van szüksége, amelyen alkalmazni kell a tulajdonságokat vagy metódusokat.
Ha nem ad meg érvényes objektumot, akkor megkapja a Objektum szükséges hiba.
Ez az útmutató segít elhárítani az objektum szükséges hibáit.
#1. Opció Explicit / Rosszul írt változónevek
Először ellenőrizze, hogy rosszul írta -e be az objektum nevét. A hibásan írt név az Object Required hibát okozhatja.
Ez megtörténhet a meglévő objektumnevekkel:
<>
Vagy változó nevekkel:
<>
Az egyik jó módszer a hibásan írt változók nevének megelőzésére az, ha feltétlenül deklarálja az Option Explicit kifejezést a kódmodul tetején.
1 | Explicit lehetőség |
Az Explicit opció kényszeríti a változók deklarálására. Most, amikor hibakeresési <> kódot kap, egy üzenetet kap, amelyben meg kell határoznia a változót:
<>
Ez segíthet abban, hogy a változó rosszul van írva.
VBA programozás | A kódgenerátor működik az Ön számára!
#2 Változó feladatok
Ezután győződjön meg arról, hogy megfelelően rendelte hozzá a változókat.
Az objektumváltozókat a Set Object =: <> használatával kell hozzárendelni
< Ha nem használja a Beállítás objektumváltozó -hozzárendelésekhez parancsot, akkor megjelenik az Objektum szükséges hiba. <> Hasonlóképpen a nem objektum változókat is hozzá kell rendelni a Set nélkül: <> Ha nem objektumváltozón próbálja használni a Beállítást, akkor megjelenik a Kötelező objektum hiba. <> A kódja egy munkalap szintű modulban van? Ha igen, akkor különösen óvatosnak kell lennie, amikor más munkalapokon megnevezett tartományokra hivatkozik. Például rendelkezhet egy „Dátum” nevű munkafüzet-szintű tartományt egy normál kódmodulban, így hivatkozhat a megnevezett tartományra: Ha azonban a munkalapszintű modulon belül hivatkozik a megnevezett tartományra, akkor kifejezetten meg kell határoznia azt a munkalapot, ahol a megnevezett tartomány található: Ellenkező esetben hiba lép fel: <>>
#3 Munkalap szintű modulok
1 MsgBox tartomány ("Dátum")
1 MsgBox Sheets ("Sheet2"). Tartomány ("Dátum"). Érték