VBA tipa nosaukums

Š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.

wave wave wave wave wave