Šis raksts parādīs VBA TypeName funkcijas izmantošanu.
VBA TypeName Funkciju izmanto, lai noteiktu šūnā saglabāto datu veidu vai atlasītā objekta veidu, piemēram, darblapu, diapazonu vai šūnu vai veidlapas vadīklu.
Datu veida noteikšana šūnā
Lai noteiktu, vai šūnā bija datu tips, mēs varam izmantot funkciju TypeName ar šūnu rekvizītu.
123 | Sub TestCellDataType ()MsgBox "Datu veids & & šūnas (3, 2). Adrese &" ir "& TypeName (Šūnas (3, 2). Vērtība)Beigu apakš |
Ja mēs izpildām šo kodu iepriekš ar darblapu zemāk, ziņojuma lodziņš mums pateiks, kāda veida dati atrodas šūnā.
Atlasītā objekta veida noteikšana
Mēs varam arī izmantot TypeName, lai noteiktu, kāda veida objekts ir atlasīts darblapā - piemēram, diapazons vai diagramma.
123 | Apakšpārbaude ()MsgBox "Jūs esat izvēlējies" & TypeName (atlase)Beigu apakš |
Vai arī, ja izvēlamies diagrammu:
Mēs varam vēl vairāk izpētīt un atlasīt diagrammas objektus, un makro atgriezīs mūsu atlasīto.
Tas viss var būt visnoderīgākais, veidojot mūsu VBA projektu, lai kontrolētu koda plūsmu vai novērstu kļūdu rašanos, veicot testus, lai pārliecinātos, ka ir izvēlēts pareizais objekta veids, vai šūnā tiek ievadīts pareizs datu veids. .
TypeName izmantošana veidlapu vadīklās
VBA ļauj mums izveidot interaktīvas veidlapas, kuras lietotājs var aizpildīt un atgriezt datus izmantojamā kodā dažādos veidos. Mēs varam izmantot operatoru TypeName, lai noteiktu veidlapā izmantoto vadīklu veidu.
Tālāk sniegtajā piemērā esmu izveidojis lietotāja veidlapu ar dažādām vadības ierīcēm - pāris teksta lodziņus, kombinēto lodziņu, 2 iespēju pogas, 2 izvēles rūtiņas un 3 komandu pogas.
Izmantojot zemāk esošo kodu, es varu noteikt, kāda veida vadīklas ir veidlapā, izmantojot cilni, izmantojot visas veidlapas vadīklas. Esmu izmantojis funkciju TypeName, lai atgrieztu ziņojumu ar vadīklas veidu ar VBA IF paziņojumu, lai pārbaudītu, kāda veida vadīkla ir atlasīta.
123456 | Sub WhatControlType ()Dim ctl kā objektsPar katru ctl In Me.ControlsMsgBox "Vadība ir" & TypeName (ctl)Nākamais ctlBeigu apakš |
Šis koda veids var būt ļoti noderīgs, ja vēlamies iespējot vai atspējot vadīklas. Tālāk norādītajā kodā, pirmo reizi atverot veidlapu, opciju pogas un izvēles rūtiņas ir atspējotas.
123456789101112 | Privāts apakšlietotājsForm_Initialize ()Dim ctl kā objektsPar katru ctl In Me.ControlsJa TypeName (ctl) = "CheckBox" Tadctl.Enabled = NepareiziElseIf TypeName (ctl) = "OptionButton" Tadctl.Enabled = NepareiziCitādictl.Enabled = PatiessBeigas JaNākamais ctlBeigu apakš |
Lai iespējotu opciju pogas un izvēles rūtiņas, aiz pogas Iespējot vadīklas esmu uzrakstījis papildu kodu.
12345678910 | Privāts apakš cmdEnable_Click ()Dim ctl kā objektsPar katru ctl In Me.ControlsJa TypeName (ctl) = "CheckBox" Tadctl.Enabled = Nav ctl.EnabledElseIf TypeName (ctl) = "OptionButton" Tadctl.Enabled = Nav ctl.EnabledBeigas JaNākamais ctlBeigu apakš |
Šī koda funkcionalitāti var izveidot arī, izmantojot VBA TypeOf operatoru.