我用的是excel2007,我在sheet中加了一些activex控件,例如lable、自己做的定时器之类,并对它们的事件进行编程。在一开始添加到sheet的时候,lable的名字是lable1,定时器的名字是vbatimer1,代码写好后试运行一切正常,满心欢喜地存盘退出。不料再打开文件的时候,不行了。查看了一下,发现原来的lable1不知怎么名字变成了lable2,vbatimer1名字变成了vbatimer2,导致原来在lable1的click事件下、vbatimer1的timer事件下所写的代码都没有触发。因为这时对应的事件应该是lable2的click事件、vbatimer2的timer事件.在sheet1的属性窗口却只看见有label2、vbatimer2,没有label1、vbatimer1,就是说,并不是多了控件,而是刚才的label1、vbatimer1不知怎么莫名其妙的自己改名了。经多次试验后,发现如果退出时不存盘就没有这个问题,但如果退出时存盘,却有很大机会会出现这种情况。每次存盘后再打开,控件后面的数字不断增加,变成label3、label4、label5、label6、label7、label8之类。请问哪位遇到过这种情况?如顺利解决加分至300.

解决方案 »

  1.   

    可否把你的EXCEL文件发给我研究一下?[email protected]
      

  2.   

    由于里面有一个自己做的activex控件vbatimer,如果要传则要把它也一起传上去并注册考虑到大家都担心的安全问题所以才不上传就这样发贴问,如果真的想看就跟贴吧。
      

  3.   

    http://www.namipan.com/d/28c09f593977a8bf5cd53c17095c71b85ad6885ee5860000
      

  4.   

    提示错误:由于控件VBATIMER1,不能退出设计模式。为什么啊?
      

  5.   

    就是差不多的原因,VBATIMER1是我初始添加那个控件时的名称,但你看看现在在sheet里那个timer变了什么名字?
    你在vba界面把所有VBATIMER1的timer事件代码整个都删除掉就不会再出这个错误了
    但要对vbatimer的timer事件编程,却又必须要在timer里写代码但这个vbatimer的名字却又老是莫名其妙的变化。。这才烦。