Office中国论坛/Access中国论坛

标题: 关于通过一个表生成另一个表中的查询 [打印本页]

作者: 月之狼神    时间: 2009-1-13 21:07
标题: 关于通过一个表生成另一个表中的查询
2008-3-25¥10,000.00
2008-4-9¥5,000.00
2008-4-12¥3,000.00
2008-4-17¥3,000.00
2008-4-30¥15,000.00

以上为原表
以下为新表
日期金额
2008-3-25¥10,000.00
2008-3-26¥10,000.00
2008-3-27¥10,000.00
2008-3-28¥10,000.00
2008-3-29¥10,000.00
2008-3-30¥10,000.00
2008-3-31¥10,000.00
2008-4-1¥10,000.00
2008-4-2¥10,000.00
2008-4-3¥10,000.00
2008-4-4¥10,000.00
2008-4-5¥10,000.00
2008-4-6¥10,000.00
2008-4-7¥10,000.00
2008-4-8¥10,000.00
2008-4-9¥5,000.00
2008-4-10¥5,000.00
2008-4-11¥5,000.00
2008-4-12¥3,000.00
2008-4-13¥3,000.00
2008-4-14¥3,000.00
2008-4-15¥3,000.00
2008-4-16¥3,000.00
2008-4-17¥3,000.00
2008-4-18¥3,000.00
2008-4-19¥3,000.00
2008-4-20¥3,000.00
2008-4-21¥3,000.00
2008-4-22¥3,000.00
2008-4-23¥3,000.00
2008-4-24¥3,000.00
2008-4-25¥3,000.00
2008-4-26¥3,000.00
2008-4-27¥3,000.00
2008-4-28¥3,000.00
2008-4-29¥3,000.00
2008-4-30¥15,000.00


有没有办法可以将第一个表变成第二个表,谢谢各位高手
作者: Henry D. Sy    时间: 2009-1-13 21:13
用记录集应该可以,
请把例子传上来
作者: Henry D. Sy    时间: 2009-1-13 22:01
假设你的原表为a,新表为b
Dim rs As New ADODB.Recordset
    Dim rst As New ADODB.Recordset
    Dim Sdate As Date
    Dim Edate As Date
    Dim interval As Integer
    Dim i As Long, j As Integer
    With rs
        .Open "A", CurrentProject.Connection, adOpenKeyset, adLockReadOnly
        rst.Open "B", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
        Do Until j = .RecordCount - 1
            Sdate = .Fields(0)
            .MoveNext
            Edate = .Fields(0)
            .MovePrevious
            interval = DateDiff("d", Sdate, Edate) - 1
            For i = 0 To interval
                rst.AddNew
                rst.Fields(0) = .Fields(0) + i
                rst.Fields(1) = .Fields(1)
            Next
            rst.Update
            j = j + 1
            .MoveNext
        Loop
        .MoveLast
        rst.AddNew
        rst.Fields(0) = .Fields(0)
        rst.Fields(1) = .Fields(1)
        rst.Update
        .Close
        rst.Close
    End With
    Set rs = Nothing
    Set rst = Nothing
作者: 月之狼神    时间: 2009-1-13 23:13
谢谢,高手,我试一下
作者: 月之狼神    时间: 2009-1-13 23:18
再次感谢高手,解决了我的大问题




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3