ACCESSのユーザ名を除去


Accessoracle等からリンクを貼った場合、
テーブル名の前にユーザ名が付加されてしまう。


それを除去するにはモジュールを作って以下のコードを実行するとよい。

Option Compare Database

Public Sub removeschema()
  Dim db As Database
  Dim tbl As TableDef

  Dim strReplace As String
  
  '除去する文字
  strReplace = "HOGE_"
  
  'DBの取得
  Set db = CurrentDb

  'テーブルにアクセス
  For Each tbl In db.TableDefs

    'システムテーブルを変更しないようにするための条件
    If InStr(1, tbl.Name, strReplace) > 0 Then
     
     'テーブル名の変更
     tbl.Name = Replace(tbl.Name, strReplace, "")
    
    End If
    
  Next
  
End Sub

動作検証:Access2003