Microsoft Access 掲示板

ファイルを選択するダイアログボックスから、、、 / 2

2 コメント
views
4 フォロー
2

上記のようなExcelファイルをフォームのクリック時イベントでダイアログボックスからインポートしたい

  • ファイルダイアログによって選択された Excel ブック上に 2 つ以上のワークシートが存在していた場合はどのワークシートを参照するのか。

  • 選択されたブック上から参照したワークシートのレイアウト(列の名前/位置)が規定のものとは一致しているか否かを、インポートする直前に検査する必要はないのか。

①1行目(注文数というタイトル)は取込不要
②2行目をフィールド名として使う
③取り込みたいのは支店番号、支店名・注文数量のフィールドのみ
④取り込みたい行数はA列(支店番号)の最終行まで

今のところ考えられるのは概ね次のいずれかの方法。

  1. 「Excel ブックから任意のセル範囲をテーブルとして参照し、任意のフィールドを選択した結果を Access データベース上の任意のテーブルに追加するクエリ( SQL )」を実行する。

  2. 「Excel ブックから任意のセル範囲をテーブルとして参照し、任意のフィールドを選択した結果」と「レコードの追加先となるテーブル」をそれぞれ DAO(または ADO )の Recordset オブジェクトとして取得し、前者の全てのレコードを後者に追加するループ処理を実行する。

  3. オートメーションによる Excel アプリケーションの操作と DAO(または ADO )のレコードセットの操作を連携させる。

ただし 1 と 2 の方法の場合、参照元であるセル範囲の各列のデータ型を明示的に指定することはできないため、いずれかのレコードにおいて型変換エラーが発生したり、あるいは意図しないデータ型に変換されてデータが欠損する可能性があります。

通報 ...