Referirea la o foaie de lucru cu variabilă de obiect - sfaturi Excel

Cuprins

Joe încearcă să descopere o eroare pe o nouă macro pe care tocmai a scris-o.

Linia care atribuie NextRow returnează o eroare care spune „Variabilă de obiect sau Cu variabilă de blocare nesetată”.

Variabilele obiect sunt destul de cool. În vechile sfaturi de la, aș folosi o variabilă obișnuită ca acestea:

OrigName = ActiveSheet.Name Worksheets(OrigName).Copy

Există o modalitate mai bună. Puteți defini o variabilă pentru a fi orice obiect, cum ar fi o foaie de lucru. Există mai multe avantaje în acest sens. Este mai scurt să folosiți variabila obiect în locul foilor de lucru (OrigName). De asemenea, pe măsură ce introduceți cod, VBA va ști că variabila este o foaie de lucru și va oferi proprietățile și metodele adecvate după ce tastați punctul. Iată noul cod:

Dim WSO as Worksheet Set WSO = Activesheet WSO.Copy

Totuși, trucul este că atunci când aveți o variabilă obiect, aceasta trebuie să fie atribuită cu cuvântul cheie Set. Dacă nu reușiți să introduceți setul în cod, veți obține oarecum non-intuitiv „Variabilă de obiect sau Cu variabilă de blocare nesetată”. Joe trebuie pur și simplu să preceadă sarcina sa variabilă cu cuvântul Set.

Articole interesante...