Vba 更改克隆对象而不更改原始对象
是否可以在VBA中复制对象,以便克隆对象的更改不会影响原始对象 例如:Vba 更改克隆对象而不更改原始对象,vba,object,set,clone,cloning,Vba,Object,Set,Clone,Cloning,是否可以在VBA中复制对象,以便克隆对象的更改不会影响原始对象 例如: Dim clone_object As Variant Set clone_object = some_object some_object.Left = 0 clone_object.Left = 666 'I want it to show 0 instead of 666 Debug.print some_object.Left 您需要在类模块中创建类似的方法(这里是Config),或者在常规模块中创建类似的方法(如
Dim clone_object As Variant
Set clone_object = some_object
some_object.Left = 0
clone_object.Left = 666
'I want it to show 0 instead of 666
Debug.print some_object.Left
您需要在类模块中创建类似的方法(这里是
Config
),或者在常规模块中创建类似的方法(如果它不是自定义对象):
Friend Sub SetConfig(SrcConfig As Config)
Set Cfg = SrcConfig
End Sub
Public Function Copy() As Config
Dim Result As Config
Set Result = New Config
Call Result.SetConfig(Cfg)
Set Copy = Result
End Function
您需要在类模块中创建类似的方法(这里是
Config
),或者在常规模块中创建类似的方法(如果它不是自定义对象):
Friend Sub SetConfig(SrcConfig As Config)
Set Cfg = SrcConfig
End Sub
Public Function Copy() As Config
Dim Result As Config
Set Result = New Config
Call Result.SetConfig(Cfg)
Set Copy = Result
End Function
这个例子一点帮助都没有-它取决于你正在使用的对象,但前提是你需要创建一个新的对象实例,这个代码只是将原始对象分配给另一个变量-不是“克隆”itMacro Man,它是一个图像,这个例子根本没有帮助-它取决于你正在使用的对象,但前提是你需要创建一个新的对象实例,这段代码只是将原始对象分配给另一个变量——不是“克隆”itMacro Man,而是一个ImageR3uK,最终解决了我的问题。非常感谢你,我能帮上忙!享受吧!;)这最终解决了我的问题。非常感谢你,我能帮上忙!享受吧!;)