我继承了一个超越我的MS Access项目:表A包含考试数据,因此A中的每个字段都是考试项目的名称,值是该项目上获得的分数。我的任务是将这些结果转换为表B,表B有一个字段用于项目名称,一个字段用于相应的值。
所以它看起来像这样:
Table A:
A.Item01
A.Item02
etc.
Table B:
NameofFieldinTableA
Result
...所以如果A.Item01 = 1,我希望将其更新为表B:
NameOfFieldinTableA = Item01 结果= 1
我为无法更好地解释这一点而道歉,但这让我完全难过。我唯一的猜测是在VBA写点什么?
感谢任何帮助!
答案 0 :(得分:0)
是的,您可以使用VBA循环遍历表中的字段 - 使用NAME属性获取NameofFieldinTableA和VALUE属性以获取结果。所以VBA看起来像这样:
Dim rsA as dao.recordset
Dim rsB as dao.recordset
dim fld as dao.field
Set rsA = CurrentDB.openRecordset("TableA", dbopendynaset)
Set rsB = CurrentDB.openRecordset("TableB", dbopendynaset)
Do Until rsA.EOF
For each fld in rsA.Fields
rsB.AddNew
rsB!NameofFieldinTableA = fld.Name
rsB!Result = fld.Value
rsB.Update
Next
rsA.MoveNext
Loop
rsA.close
rsB.Close
Set rsA = Nothing
Set rsB = Nothing