Henvisning til et regneark med objektvariabel - Excel-tip

Indholdsfortegnelse

Joe prøver at pusle en fejl ud af en ny makro, som han lige har skrevet.

Linjen, der tildeler NextRow, returnerer en fejl, der siger "Objektvariabel eller med blokvariabel ikke indstillet".

Objektvariabler er ret seje. I de gamle tip på ville jeg bruge en regelmæssig variabel som disse:

OrigName = ActiveSheet.Name Worksheets(OrigName).Copy

Der er en bedre måde. Du kan definere en variabel til at være et hvilket som helst objekt, såsom et regneark. Der er flere fordele ved dette. Det er kortere at bruge objektvariablen i stedet for regneark (OrigName). Når du skriver kode, ved VBA også, at variablen er et regneark og tilbyder de relevante egenskaber og metoder, når du har skrevet prikken. Her er den nye kode:

Dim WSO as Worksheet Set WSO = Activesheet WSO.Copy

Tricket er dog, at når du har en objektvariabel, skal den tildeles Set-nøgleordet. Hvis du undlader at sætte sættet i koden, får du den noget ikke-intuitive "Objektvariabel eller med blokvariabel ikke indstillet". Joe skal simpelthen forud for sin variable opgave med ordet Set.

Interessante artikler...