Accessテーブルの指定フィールド一括置換

 

'Accessテーブルの指定フィールド一括置換

Function replaceTable()

    Dim myDB

    Dim myTD

    

On Error GoTo Err_replaceTable

    

    'カレントデータベースを変数に代入する

    Set myDB = CurrentDb

    'データベース内のテーブル名前を表示する

    For Each myTD In myDB.TableDefs

        

        If InStr(myTD.Name, "対象のテーブル名") > 0 Then

            Debug.Print (myTD.Name)

            

            Dim SQL As String

            SQL = "UPDATE " & myTD.Name & " SET [置換するフィールド] = Replace([置換するフィールド], '置換文字前', '置換文字後')"

            

            '確認ダイアログを出さない

            DoCmd.SetWarnings False

            

            'SQL実行

            DoCmd.RunSQL SQL

        

        End If

    Next

 

    replaceTable = ""

 

Exit_replaceTable:

    replaceTable = ""

    Exit Function

 

Err_replaceTable:

    MsgBox myTD.Name & vbCrLf & Err.Number & " - " & Err.Description

    Resume Exit_replaceTable

    

 

End Function