现在我们有个项目,不是用VB写的.但是要用到excel,没办法,有些逻辑就是要用到VB,
现在客户有这么个要求,再一个列里面加combobox,每一行都要,(当然,这行必须有其它数据)
而且,
ComboBox1.AddItem "a", 0
ComboBox1.AddItem "b", 1
ComboBox1.AddItem "c", 2
我最终取的值不是a,b,c,而是a,b,c对应的数值,比如:a11;
但给用户看的是a,b,c只好到这里求助各位专家了,,,,

解决方案 »

  1.   

    Sub Macro2()
    '
    ' Macro2 Macro
    ' 宏由 李洪根 录制,时间: 2004-10-21
    ''
        Columns("B:B").Select
        With Selection.Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="a,b,c"
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .IMEMode = xlIMEModeNoControl
            .ShowInput = True
            .ShowError = True
        End With
    End Sub
      

  2.   

    to: lihonggen0(李洪根,MS MVP,标准答案来了) 
      
       没有任何注释,看不懂,,,,,thank you all the same!用逗号分隔录制宏,查看代码就可以了
    --------------------
    怎么样才能查看代码呢?
    我在来源里输入aa,bb,cc,dd,ee,ff,但我想要得到aa对应的值a,bb对应的值b......怎么办?另外,这样做是不是只可以在一个单元隔里;我要的是一整列;
      

  3.   

    //怎么样才能查看代码呢?录制完宏后,点工具-宏-VB编辑器,打开模块,找你定义的名字的那个Sub
      

  4.   

    用excel菜单:
    数据——有效性
    在“允许”中选“序列”
    在来源中填“a,b,c”
    录制下来就是上面的宏
      

  5.   

    VB中一般都有Form_Initialize(),Form_load() 用来初始化的方法,
    可是在excel中初始化是在哪儿呢?
      

  6.   

    to  WQ771211(SyanSea):
        选中了B列,岂不是B列所有的都要加一个这个东东,但是前面几行我并不能让它加啊,就好像文档似的,前面总有表头什么的么。
      

  7.   

    另外,我在来源里加了那些Items,但是我好像没有用到那个宏啊?下面这一段到底是干吗用的?Sub Macro2()
    '
    ' Macro2 Macro
    ' 宏由 李洪根 录制,时间: 2004-10-21
    ''
        Columns("B:B").Select
        With Selection.Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="a,b,c"
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .IMEMode = xlIMEModeNoControl
            .ShowInput = True
            .ShowError = True
        End With
    End Sub