如何根据字段值创建新表?

How do I create new tables based on a field value?

好多年没用Access了,肯定生疏了。。。我想把一个已有的table拆分成多个table基于单个值.例如: (请注意,值会有所不同,除了下面的 Col C 之外,它们是什么无关紧要)

Col A |  Col B  | Col C | Col D
--------------------------------
aaa   |  xxx    | app1  | somepath1
bbb   |  yyy    | app1  | somepath2
ccc   |  zzz    | app2  | somepath3
ddd   |  www    | app2  | somepath4
eee   |  vvv    | app3  | somepath5

基本上我想拆分并创建一个名为 "app1" 的 table,其中包含来自 app1 的所有行,一个名为 "app2" 的 table 包含所有行来自app2等

与其使用 make table 查询手动执行此操作,将每个应用程序名称复制并粘贴到条件字段中,我更愿意自动执行此操作并使其成为可以 运行 关于未来的数据。

我尝试直接编辑 SQL 并 select 创建一个不同的应用程序名称,然后基于此创建一个 select,但我尝试过的每件事都给出了错误 "the field is too small to accept the amount of data you attempted"。我什至不确定那是什么意思,因为我的所有字段都是 "Long Text",并且在大多数情况下数据甚至不超过 200 个字符。

关于如何自动执行此操作的任何建议?谢谢你的时间。

Function split()
Set db = CurrentDb()
Set Applist = db.OpenRecordset("select ColC from SourceData group by ColC")
Applist.MoveFirst
Do While Not Applist.EOF
    App = Applist.Fields("ColC").Value
    SQL = "select * into [" & App & "] "
    SQL = SQL & " from [SourceData] where ColC='" & App & "'"
    db.Execute (SQL)
    Applist.MoveNext
    Loop
MsgBox ("Done")
End Function

注意 - 这假定 ColC 的内容是 "nice" - 例如,没有引号或括号。空格应该没问题。