combox的简单问题??

karykwan 2005-01-04 11:45:56
Set rst2 = cmd.Execute
While Not rst2.EOF
cbxcar.AddItem rst2.Fields(0) & rst2.Fields(1)
rst2.MoveNext
Wend
如上我用数据集字段填充了combox

请问我如果在做插入操作取值时.怎么得到rst2.fields(0)的值啊?用.text得到的是全部值.?
...全文
80 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
karykwan 2005-01-04
  • 打赏
  • 举报
回复
SetComboIndex oCombo
未定义???
jtkkjtkk 2005-01-04
  • 打赏
  • 举报
回复
你用rst2.Fields(0) & rst2.Fields(1)把字段0和字段1连接到一块儿了,并且中间没有任何分隔符,因而在取其中一个字段时,无法正确取出。解决的方法时在两个字段之间加一个分隔符,我常用Tab键,这样也显示出来比较整齐一点:
rst2.Fields(0) & vbTab & rst2.Fields(1)
要取出来时,用Instr找到Tab的位置,然后用Left或Right取出字段0或字段1。
不知道说明白没有。

myhgyp 2005-01-04
  • 打赏
  • 举报
回复
Public Function LoadCombo(oCombo As Object, Rs As ADODB.Recordset, Optional NA As Integer)

'Loads a combo with 1 or 2 fields in the recordset
'field(0) becomes the key
'The tag property is used to set the selected item for the combo
Dim i As Integer
Dim lID As Long
Dim sID As String
Dim iIndex As Integer

oCombo.Clear

iIndex = 0

If Not IsMissing(NA) Then
If NA = 1 Then
oCombo.AddItem "! N/A"
oCombo.ItemData(oCombo.NewIndex) = 0
ElseIf NA = 0 Then
oCombo.AddItem "! None"
oCombo.ItemData(oCombo.NewIndex) = 0
End If
End If
Rs.MoveFirst

lID = Val(oCombo.Tag)
sID = oCombo.Tag

While Not Rs.EOF
If Rs.Fields.Count = 1 Then
oCombo.AddItem (Rs.Fields(0).Value)
Else
If Not IsNull(Rs.Fields(1).Value) Then
oCombo.AddItem (Rs.Fields(1).Value)
oCombo.ItemData(oCombo.NewIndex) = Rs.Fields(0).Value
End If
End If
i = i + 1
Rs.MoveNext
Wend

SetComboIndex oCombo

End Function
用这种方式填充

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧