设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: canghua
打印 上一主题 下一主题

[Access本身] [已解决]如何把多张格式相同的表链接成一张?

[复制链接]
11#
 楼主| 发表于 2008-4-20 16:01:46 | 只看该作者
多谢楼上的。
听你这么一说,的确是可以通过这种形式完成。
呵呵。
谢谢了。
12#
发表于 2008-4-20 16:14:44 | 只看该作者
数据库设计思路是多种多样的,我有时候也会钻入死胡同,最后会卡在哪里。因此,当出现这种情况时,想想自己的这种思路是否出问题了,同时,在技术层面上有没有现有的资料可参考,这样可少走一些弯路。
13#
 楼主| 发表于 2008-4-20 22:53:19 | 只看该作者
多谢大家的支持。我已经搞定了。
Sub union()
Dim str As String
Dim end_day As Date
end_day = #4/20/2008#
For i = end_day To end_day - 10 Step -1
If fExistTable("plmn_kpi" & Format(i, "yyyymmdd")) Then
str = "select * from plmn_kpi" & Format(i, "yyyymmdd")
Exit For
End If
Next

For i = end_day To end_day - 10 Step -1

If fExistTable("plmn_kpi" & Format(i, "yyyymmdd")) Then
str = str & " union select * from plmn_kpi" & Format(i, "yyyymmdd")
End If
Next

DoCmd.RunSQL ("select * into plmn_kpi from (" & str & ")")
End Sub


Function fExistTable(strTableName As String) As Integer
Dim db As Database
Dim i As Integer
    Set db = DBEngine.Workspaces(0).Databases(0)
    fExistTable = False
    db.TableDefs.Refresh
    For i = 0 To db.TableDefs.Count - 1
        If strTableName = db.TableDefs(i).Name Then
            'Table Exists
            fExistTable = True
            Exit For
        End If
    Next i
    Set db = Nothing
End Function
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-30 02:44 , Processed in 0.097498 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表