1. Excel中创建了几个控件,TextBox和ListBox,命名方式就是从1到N,写完事件代码后测试正常,但是发给其他人之后,有些人可以正常运行,但是有些人打开后报错,进入设计模式后发现控件名称自动发生改变了,导致事件代码没有对象而报错,网上查了一下也有人发生类似情况,但是没找到解决方案。
2. 为了解决上面的问题,我想通过动态创建控件的方式实现,文件启动后先删除所有控件,再通过以下代码创建:
With Sheet2.OLEObjects.Add(ClassType:="Forms.TextBox.1", Left:=10, Top:=10)
.name = "TextBoxOBJ"
.Visible = False
End With
结果有时候是好的,有时候又出现控件名称(表单左上角)名称与代码命名一致,但是属性中的名称是默认命名“TextBox21”,结果又因为事件代码没有对象而报错。
请问以上问题如何解决?求助各位高人。