Hivatkozás egy munkalapra objektumváltozóval - Excel tippek

Tartalomjegyzék

Joe megpróbálja megfejteni egy hibát egy új makrón, amelyet most írt.

A NextRow-t hozzárendelő sor hibát ad vissza, amely azt mondja: "Objektumváltozó vagy Blokkváltozó nincs beállítva".

Az objektumváltozók nagyon klasszak. A régi tippekben a következő rendes változót használnám:

OrigName = ActiveSheet.Name Worksheets(OrigName).Copy

Van egy jobb módszer. Bármelyik objektumként meghatározhat egy változót, például munkalapot. Ennek számos előnye van. Rövidebb az objektumváltozó használata a Munkalapok (OrigName) helyett. A kód beírásakor a VBA is tudja, hogy a változó munkalap, és a pont beírása után felajánlja a megfelelő tulajdonságokat és módszereket. Itt van az új kód:

Dim WSO as Worksheet Set WSO = Activesheet WSO.Copy

A trükk azonban az, hogy ha van objektumváltozója, azt a Set kulcsszóval kell hozzárendelni. Ha nem sikerül beírnia a készletet a kódba, akkor megkapja a kissé nem intuitív "Object Variable or With Block Variable Not Set" objektumváltozatot. Joe-nak egyszerűen meg kell előznie a változó kijelölését a Set szóval.

érdekes cikkek...