Objekti nõutav viga Excel VBA -s - tõrkeotsing

Objekti nõutava vea ülevaade

See õpetus aitab teil objekti nõutavate vigade tõrkeotsingut VBA -s leida.

<

<

Objektide ülevaade

VBA -s on objekt "asi" nagu tööleht, töövihik, vahemik, kuju, rida, veerg, kasutajavorm, juhtelement jne.

Objektidel on atribuudid (nt: nimi, värv, peidetud) ja meetodid (nt: avatud, selge, salvesta, peida). Kui proovite rakendada atribuuti või meetodit, vajab VBA atribuutide või meetodite rakendamiseks kehtivat objekti.

Kui te ei esita kehtivat objekti, saate selle Objekti nõutav viga.

See juhend aitab teil objekti nõutavate vigade tõrkeotsingut teha.

#1. Valik Selged / valesti kirjutatud muutujate nimed

Esiteks kontrollige, kas olete objekti nime valesti kirjutanud. Valesti kirjutatud nimi võib põhjustada vajaliku objekti tõrke.

See võib juhtuda olemasolevate objektide nimedega:

<>

Või muutuvate nimedega:

<>

Üks hea viis valesti kirjutatud muutujate nimede vältimiseks on veenduda, et deklareerite oma koodimooduli ülaosas valiku Explicit.

1 Valik Selge

Option Explicit sunnib teid oma muutujaid deklareerima. Nüüd, kui silute oma koodi <>, kuvatakse teade muutuja määratlemiseks:

<>

See peaks aitama teil mõista, et see muutuja on valesti kirjutatud.

VBA programmeerimine | Koodigeneraator töötab teie jaoks!

#2 Muutuja ülesanded

Seejärel veenduge, et olete oma muutujad õigesti määranud.

Objekti muutujad tuleb määrata funktsiooni Set Object =: <> abil

<>

Kui te ei kasuta objekti muutujate määramiseks valikut Set, kuvatakse tõrge Object Required.

<>

Samamoodi tuleks objektivabad muutujad määrata ilma seadistuseta:

<>

Kui proovite Seti kasutada mitteobjektiivsel muutujal, kuvatakse tõrge Object Required.

<>

#3 Töölehe taseme moodulid

Kas teie kood on töölehe taseme moodulis? Kui jah, siis peate olema teistel töölehtedel nimetatud vahemikele viitamisel eriti ettevaatlik.

Näiteks võib teil olla tavalises koodimoodulis töövihiku taseme nimega vahemik „Kuupäev“, millele saate viidatud nimedega vahemikule viidata järgmiselt:

1 MsgBoxi vahemik ("Kuupäev")

Kui aga viidate nimetatud vahemikule töölehe taseme moodulis, peate selgesõnaliselt määratlema töölehe, kus nimetatud vahemik asub:

1 MsgBox Sheets ("Sheet2"). Vahemik ("Date"). Väärtus

Vastasel juhul ilmneb tõrge:

<>

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave