我的VBA很生锈,我似乎在画空白。如果它很重要,我正在使用MS Access 2010。如何使用VBA循环访问MS Access记录集并将变量分配给结果?
我有一个查询返回两个字段(Field1是文本和Field2是双)和五个记录的结果,我想根据Field1中的内容将Field2值分配给五个不同的变量。对我而言,这是某种情况下的陈述 - 我如何在VBA上做记录集?
Private Sub test()
Dim myRS As DAO.Recordset
Dim db As Database
Dim strSQL As String
Dim v1, v2, v3, v4, v5 As Double
' Pretend strSQL is a different query that gives five records
Set dbs = CurrentDb
strSQL = "SELECT Field1, BigNumber FROM tmp1"
Set myRS = dbs.OpenRecordset(strSQL)
Do While Not myRS.EOF
v1 = ? ' I want v1 = Field2 when Field1="A"
v2 = ? ' I want v2 = Field2 when Field1="B"
v3 = ? ' I want v3 = Field2 when Field1="C"
v4 = ? ' I want v4 = Field2 when Field1="D"
v5 = ? ' I want v5 = Field2 when Field1="E"
Loop
End Sub
非常感谢!
你在用做变量v1-v5?我想我比循环数据集有更好的解决方案,但我需要知道最终的游戏是什么。 – JohnFx 2013-02-20 16:48:28