Verzeihen Sie mir, ich bin ein Neuling in VBA.
Manchmal verwende ich
Dim r as Range
r = Range("A1")
Andere Male verwende ich
Set r = Range("A1")
Worin besteht der Unterschied? Und wann sollte ich was verwenden?
Verzeihen Sie mir, ich bin ein Neuling in VBA.
Manchmal verwende ich
Dim r as Range
r = Range("A1")
Andere Male verwende ich
Set r = Range("A1")
Worin besteht der Unterschied? Und wann sollte ich was verwenden?
Dim
ist die Abkürzung für Dimension und wird in VBA und VB6 verwendet, um lokale Variablen zu deklarieren.
Set hingegen hat nichts mit Variablendeklarationen zu tun. Die Set
Schlüsselwort wird verwendet, um zuweisen. eine Objektvariable zu einem neuen Objekt.
Ich hoffe, das verdeutlicht den Unterschied für Sie.
Laut VBA-Hilfe setzt die SET-Anweisung einen Verweis auf ein Objekt. Wenn Sie also eine Eigenschaft ändern, ändert sich auch das tatsächliche Objekt.
Dim newObj as Object
Set var1=Object1(same type as Object)
Set var2=Object1(same type as Object)
Set var3=Object1(same type as Object)
Set var4=Object1(same type as Object)
Var1.property1=NewPropertyValue
ändern sich auch die anderen Vars-Eigenschaften, also:
Var1.property1=Var2.property1=Var3.property1=Var4.property1=Object1.Property1=NewpropertyValue`
Eigentlich sind alle Variablen gleich!
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.