: Хэрэглэгчийн тодорхойлсон төрөл Excel VBA-д тодорхойлогдоогүй (2 хурдан шийдэл)

  • Үүнийг Хуваалц
Hugh West

Excel дээр VBA -тэй ажиллахад бидэнд тохиолддог хамгийн нийтлэг алдаа бол хэрэглэгчийн тодорхойлсон төрөл тодорхойлогдоогүй байдаг. Энэ нийтлэлд би энэ алдаа яагаад үүссэн болон энэ алдааг хэрхэн шийдвэрлэх талаар танд харуулах болно.

Дасгал хийх ажлын номыг татаж авах

Дадлага хийхдээ дасгал хийхдээ энэ номыг татаж аваарай. Энэ нийтлэлийг уншиж байна.

Хэрэглэгчийн тодорхойлсон төрөл Тодорхойгүй.xlsm

2 Шалтгаан ба шийдэл Хэрэглэгчийн тодорхойлсон Excel VBA-д төрөл тодорхойлогдоогүй

Excel VBA дээр байнга гардаг энэхүү алдааны цаана 2 гол асуудал байдаг. Тэдгээрийг нарийвчлан судалж, шийдвэрлэх арга замыг олж мэдье.

1. Хувьсагчдыг зарлах үеийн зөв бичгийн алдаа

Энэ алдааны гол шалтгаан нь энэ юм. Ихэнх тохиолдолд “Хэрэглэгчийн тодорхойлсон төрөл тодорхойлогдоогүй” алдаа нь хувьсагчдыг зарлах үед зөв бичгийн дүрмийн алдаанаас үүдэлтэй байдаг.

Дараах мөрийн кодыг харна уу.

1690

Хэрэв та энэ кодыг ажиллуулбал “Хэрэглэгчийн тодорхойлсон төрөл тодорхойлогдоогүй” гэсэн алдаа байгааг мэдэгдэх алдааны хайрцаг гарч ирнэ. Үүний хажуугаар та цэнхэр өнгөөр ​​тодруулсан кодын хоёр дахь мөрийг олох болно, энд би “string” -ын оронд “strng” гэж бичсэн.

Та бүхнийг ойлгосон байх гэж найдаж байна. VBA нь “strng” хувьсагчийн төрлийг таньж чадаагүй тул үүнийг шинэ хувьсагчийн төрөл гэж үзэн, таныг хаа нэгтээ тодорхойлсон гэж бодсон. Гэхдээ хэзээТаныг үүнийг хаана ч зарлаагүй байгааг олж мэдсэн тул алдаа гарлаа.

Тиймээс энгийн VBA кодуудыг ажиллуулж байхдаа ямар нэгэн байдлаар энэ алдаатай тулгарвал эхлээд хувьсагчийн төрлүүдийн зөв бичгийн дүрмийг шалгана уу.

2. Зөв лавлагаа дутмаг

Энэ нь энэ алдааны өөр нэг шалтгаан юм. Энэ нь зохих лавлагааны дутагдал юм. Заримдаа бид кодууддаа Visual Basic Reference box -аас зохих лавлагаа авах шаардлагатай зарим объектыг ашигладаг. Үгүй бол VBA объектыг танихгүй.

Дараах VBA кодыг харна уу.

1913

Энэ кодыг ажиллуул. Та ижил хуучин алдааг хүлээн авах болно “Хэрэглэгчийн тодорхойлсон төрөл тодорхойлогдоогүй”, Толь бичгийн объектыг онцлон тэмдэглэв . Учир нь VBA нь Толь бичгийн объект -ыг таньж чадаагүй бөгөөд үүнийг хэрэглэгчийн тодорхойлсон хувьсагч гэж үзсэн бөгөөд алдаагаар тодорхойлогдоогүй байна.

Одоо хамгийн том асуулт бол энэ алдааг хэрхэн шийдэх вэ? Хялбар. Энэ алдааг шийдэх 2 арга бий.

⧪ Шийдэл 1: Visual Box лавлагааны хайрцгаас урьдчилсан нөхцөлийн лавлагааг шалгах

Энэ нь Энэ асуудлыг шийдэх хамгийн ухаалаг арга. Хэрэгслүүд > Visual Basic туузан дээрх References товч. Лавлагаа дээр дарна уу.

Лавлагаа гэсэн харилцах цонх нээгдэнэ. Гүйлгээд Microsoft Scripting Runtime -г олоорой(Энэ нь таны ашиглаж буй объектоос хамаарна. Толь бичигОбъект нь танигдахын тулд Microsoft Scripting Runtime хэрэгтэй. Тиймээс VBA кодонд объектыг ашиглахдаа VBA-ээр танигдах урьдчилсан нөхцөлийг та мэдэх ёстой. Дэлгэрэнгүй мэдээллийг энэ холбоосоор орж авна уу.). Үүнийг шалгана уу.

Одоо буцаж ирээд кодыг ажиллуул. Та ямар ч алдаа авахгүй. Учир нь VBA энэ удаад Толь бичгийн объект -ийг таньж чадна.

⧪ Шийдэл 2: Үүнийг тодорхой объект биш цэвэр объект гэж зарлах нь

Энэ асуудлыг шийдэх өөр нэг арга бий. Та объектыг Толь бичгийн объект гэхээсээ илүү цэвэр объект гэж зарлаж болно.

Дараах кодын мөрүүдийг анхаарна уу.

3093

Энд би MyDictionary хувьсагчийг Толь бичиг биш энгийн объект гэж зарлалаа. Одоо та энэ кодыг ажиллуулбал алдаа гарахгүй.

Хью Уэст бол салбартаа 10 гаруй жил ажилласан туршлагатай Excel-ийн сургагч багш, шинжээч юм. Нягтлан бодох бүртгэл, санхүүгийн чиглэлээр бакалавр, бизнесийн удирдлагын магистр зэрэгтэй. Хью багшлах сонирхолтой бөгөөд дагаж мөрдөх, ойлгоход хялбар заах өвөрмөц арга барилыг боловсруулсан. Түүний Excel-ийн мэдлэг чадвар нь дэлхий даяарх олон мянган оюутан, мэргэжилтнүүдэд ур чадвараа дээшлүүлж, ажил мэргэжлээрээ амжилт гаргахад тусалсан. Хью өөрийн блогоороо дамжуулан өөрийн мэдлэгээ дэлхийтэй хуваалцаж, Excel програмын үнэгүй зааварчилгаа, онлайн сургалтыг хувь хүмүүс болон бизнесүүдэд бүрэн дүүрэн ашиглахад нь туслах зорилгоор санал болгодог.