在VBA中复合框赋值问题

吧复合框中的值赋值给以个变量EG:复合框中的值是M8我设定一个变量DIMradius1asvariant假如M8的值是10就是将radius1赋值=10求高手解答在线等回... 吧复合框中的值赋值给以个变量
EG:复合框中的值是M8 我设定一个变量 DIM radius1 as variant
假如 M8 的值是10 就是将radius1赋值=10
求高手 解答 在线等 回答好的追加
AddItem "M8"
AddItem "M24"
AddItem "M16"
是标准螺栓 的规格
实现的这个功能就给分
一个复合框 一个文本框 单击复合框 “M8” 文本框中显示数据"10"(假如) 就OK了。
我刚刚学VB 实现这个功能就行 其余的我都解决了
最好留下QQ 做个朋友 日后交流 在线等
展开
 我来答
帐号已注销
2010-10-03 · TA获得超过8613个赞
知道大有可为答主
回答量:3242
采纳率:66%
帮助的人:2859万
展开全部
'两个公共变量
Public a '存放 M8|10 ……的对应关系
Public radius1 As Variant 'LZ需要的变量

Private Sub ComboBox1_Change() '组合框改变时的动作
Dim iStr As String
iStr = a(ComboBox1.ListIndex)
TextBox1.Value = Right(iStr, Len(iStr) - InStr(iStr, "|"))
radius1 = TextBox1.Value
MsgBox radius1
End Sub

Private Sub UserForm_Initialize() '窗体载入时的动作
a = Split("M8|10,M16|20,M24|30", ",")
If ComboBox1.ListCount <> UBound(a) + 1 Then
For i = LBound(a) To UBound(a)
ComboBox1.AddItem Left(a(i), InStr(a(i), "|") - 1)
Next
ComboBox1.ListIndex = -1
End If
End Sub

参考资料: m

ljl88900
2010-09-21 · TA获得超过2661个赞
知道大有可为答主
回答量:2197
采纳率:100%
帮助的人:2632万
展开全部
前提条件:在Excel中,M8表示第M列的第8行数据,M16、M24依此类推。

如果满足上述条件,完整代码不写了,关键代码如下:
Private Sub ComboBox1_Click()
Dim s As String
s = ComboBox1.Text
s = s & ":" & s
TextBox1.Text = Range(s).Value
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
czsoft001
2010-09-21 · 超过47用户采纳过TA的回答
知道答主
回答量:361
采纳率:0%
帮助的人:140万
展开全部
Option Explicit

Private Sub Combo1_Click()
Dim arr() As String
arr = Split(Combo1.List(Combo1.ListIndex), ",")
'Combo1.Text = arr(0)
Text1 = arr(1)
End Sub

Private Sub Form_Load()
Combo1.Clear
Combo1.AddItem "M8,10"
Combo1.AddItem "M16,20"
Combo1.AddItem "M24,30"
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cm6705
2010-09-21 · TA获得超过328个赞
知道小有建树答主
回答量:289
采纳率:0%
帮助的人:399万
展开全部
radius1=ComboBox1.Value
刚才你HI我了?我QQ:605660513
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式