accessのテーブルにexcelを取り込むのに、1行目(タイトル行)が破壊されてもインポートできるようにするため、2行目からインポートする。 すると、取り込み先のテーブルが新規テーブルであれば、自動的にテーブルのフィールド名がF1,F2,F3・・・・となる。 取り込み先のテーブルが新規テーブルではなく、既存テーブルの場合、テーブルのフィールド名がF1,F2,F3・・・・となっていなけレバならない。 そうでない場合には、F1フィールドがありませんというエラーメッセージでインポートが失敗する。 そこで、既存テーブルがある場合には、いったん、削除しておくという奥の手を使うこともできる。
Docmd.DeleteObject acTable,"table1"そして、フィールド名がF1,F2,F3・・・・のままでは、具合が悪い(使い勝手が悪い)ので、 以下のvbaコードでフィールド名を自分の好きな名前に一括変更してみた。これで、うまく行くことを祈る。
Sub FieldNameChange() Dim dbs As Database Set dbs = CurrentDb With dbs.TableDefs("table1") .Fields("F1").Name = "番号" .Fields("F2").Name = "名前" .Fields("F3").Name = "年齢" (繰返し) .Fields.Refresh End With End Sub
0 件のコメント:
コメントを投稿