重命名一个只知道部分表名的表

时间:2014-08-19 17:37:33

标签: sql vba ms-access

我正在研究一些工具,以便在附加到另一个表之前导入大量数据并进行清理。

作为此过程的一部分,我需要在其余进程之前重命名导入的表。

Private Sub btnRenameTable_Click()
    DoCmd.Rename "NEW_DATA", acTable, "DATA SOURCE"
End Sub

我遇到的问题是要重命名的表格在末尾有一个数字形式的差异,即DATA SOURCE 01DATA SOURCE 02等。

如何修改上述代码以查找表并重命名,而不必每次都修改原始名称?我只是需要它来检查表格标题中的“DATA SOURCE”,这些数字与我的需求无关。

1 个答案:

答案 0 :(得分:1)

您正在寻找Like运算符来查找重命名的表。发布示例,您可以轻松地将其修改为您的使用(包含Like运算符的示例,并使用索引一次性重命名所有新表,而不是垃圾邮件单击按钮)

Dim td As TableDef
Dim i as Long
i = 1
For Each td In CurrentDb.TableDefs
    If td.Name Like "NEW SOURCE*" Then
        DoCmd.Rename "NEW SOURCE", acTable, "DATA SOURCE" & Format(i,"00")
        i = i + 1
    End If
Next