Monday, July 6, 2009

久しぶりのアクセス - accessのテーブルリンクの一括リネームと属性変更

久しぶりのアクセスを触るようになった。
accessのテーブルリンクの一括リネームと属性変更したいと思っていろいろと試してみた。
結局このプログラムが一番で気がいいかも。

Option Compare Database

Sub RenameTables()
Dim i As Integer
Dim dbRename As Database

'Set dbRename = OpenDatabase(App.Path & "\mydb.mdb")

'dbRename.CreateTableDef

Dim tbl As TableDef
Set dbRename = CurrentDb

For Each tbl In dbRename.TableDefs
'If (tbl.Connect <> "") Then
' tbl.Connect = Replace(tbl.Connect, strOldPath, strNewPath)
' tbl.RefreshLink
'End If
Dim sPrefix As String
sPrefix = "YBBUSER_"
Dim sTblName As String, sTblNameNew As String
sTblName = tbl.Name
If sTblName <> "MSysAccessObjects" Then
If Left(sTblName, Len(sPrefix)) = sPrefix Then
sTblNameNew = Replace(sTblName, sPrefix, "")
tbl.Name = sTblNameNew
End If
End If
Next

'dbRename.Close
Set dbRename = Nothing

End Sub

No comments: