• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アクセス2007 テーブルの全削除とデータ移動)

アクセス2007 テーブルの全削除とデータ移動

このQ&Aのポイント
  • アクセス2007のテーブルを全削除し、データを移動する方法について説明します。
  • アクセス2007でテーブルを削除した後、データをインポートする方法について質問しています。
  • 手動で行った場合のインポート時のオプション「リレーションシップ=チェックON」を再現する方法について質問しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

急激な暑さで文章の読解力が落ちている この頃です。 (1) 以下msのsupportを利用しています。 フォームモジュールのどこかにこのまま張り付けてください。 Private Sub ImportRelations2(DBName As String) Dim ThisDb As Database, ThatDB As Database Dim ThisRela As Relation, ThatRela As Relation Dim ThisField As Field, ThatField As Field Dim cnt As Integer, RCount As Integer Dim i As Integer, j As Integer Dim ErrBadField As Integer RCount = 0 Set ThisDb = CurrentDb Set ThatDB = DBEngine.Workspaces(0).OpenDatabase(DBName) For i = 0 To ThatDB.Relations.Count - 1 Set ThatRela = ThatDB.Relations(i) Set ThisRela = ThisDb.CreateRelation(ThatRela.Name, _ ThatRela.Table, ThatRela.ForeignTable, _ ThatRela.Attributes) ErrBadField = False On Error Resume Next For j = 0 To ThatRela.Fields.Count - 1 Set ThatField = ThatRela.Fields(j) Set ThisField = ThisRela.CreateField(ThatField.Name) ThisField.ForeignName = ThatField.ForeignName ThisRela.Fields.Append ThisField If Err <> False Then ErrBadField = True Next j On Error GoTo 0 If ErrBadField = True Then Else On Error Resume Next ThisDb.Relations.Append ThisRela If Err <> False Then Else RCount = RCount + 1 End If On Error GoTo 0 End If Next i ThisDb.Close Set ThisDb = Nothing ThatDB.Close Set ThatDB = Nothing End Sub (2) 次にテーブルのインポートのプロシージャの下の部分に Call ImportRelations(strPATH) を加えます。 Next 'リレーションのインポート Call ImportRelations(strPATH) db.Close Set db = Nothing End Sub このようにします。これで終了です。

situmonnsya
質問者

お礼

piroin654様、いつも、いつもご丁寧に感謝致します。 ご回答のコードをそっくりそのまま、使わせて頂きました。 無事希望どうりの動作をしています。 私の技量では絶対無理な技で、ありがたく思っています。 今後も、宜しくお願い致します。 ありがとうございました。

その他の回答 (1)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

訂正です。プロシージャの先頭、 >Private Sub ImportRelations2(DBName As String) を Private Sub ImportRelations(DBName As String) にしてください。いらないものがくっついていました。

関連するQ&A