Excel精英培训网

 找回密码
 注册
查看: 1534|回复: 1

[无附件] 大神求助,自己编写的客户管理系统里vba宏老是有bug

[复制链接]
发表于 2020-5-2 03:25 | 显示全部楼层 |阅读模式
[img]blob:http://www.excelpx.com/4bfb48ed-0ecd-45cc-ad31-d83ce11152e8[/img]我就是想制作一个框框方便输入已有的客户,然后对应着client表上面全部保存在excel上,combox1 是我想输入餐厅的种类(一共就三种餐厅,我就想用 ComboBox1.AddItem (Cells(2, 5))直接加入这三种表格上对应的种类),而combox2是想出现每一个客户的名字,然后他所有的信息都会呈现在listbox1里面。
Sub UserForm_Initialize()
Dim ligne As Integer
    ' On selectionne la bonne feuille Excel
  Sheets("clients").Activate
  '  partir de la ligne 2 jusqu' une cellule vide, on ajoute le nom de clients dans combobox2
  ligne = 2
While Sheets("clients").Cells(L, 1) <> ""
    ComboBox2.AddItem (Cells(ligne, 1))
    ligne = ligne + 1
  Wend
   ' On ajoute 3 types de restaurant dans la combobox1
    ComboBox1.AddItem (Cells(1, 5))
       ComboBox1.AddItem (Cells(2, 5))
          ComboBox1.AddItem (Cells(3, 5))  
End Sub
但是光一开始我这个combobox就被excel否定了, 标黄了。我这里打红色了。请问各位大神,能告诉一下我, 这里到底出了什么问题吗?

发表于 2020-5-2 12:09 | 显示全部楼层
可能的错误有:
1、While Sheets("clients").Cells(L, 1) <> ""
     变量L在你代码里没出现;
2、如果控件是直接添加到工作表里面的,需要指明前缀,否则会找不到对象。假如combobox2所在的工作表是clients,则:
    clients.ComboBox2.AddItem (Cells(ligne, 1))
    同样的道理,如果控件是在窗体中的,也需要指定窗体的名称,比如:
    userform1.ComboBox2.AddItem (Cells(ligne, 1))
    或者:
    me.ComboBox2.AddItem (Cells(ligne, 1))
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-3 01:51 , Processed in 0.395787 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表