• ベストアンサー

excelファイルからaccessへのデータ移管

m3_makiの回答

  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.4

最初に思いつく方法は、エクセルシートからリンクテーブルを作り リンクテーブルのデータを 追加クエリで目的のテーブルに追加する、 というところでしょうか。 NSERT INTO アクセステーブル ( A, B, C, D, E, F, G ) SELECT A, B, C, D, E, E1, G FROM リンクテーブルデータ; という感じのクエリになります。

関連するQ&A

  • ExcelデータをACCESSへエキスポート

    ExcelデータをADOを使いACCESSへエキスポートしたいのですが、 データ型がちがうというエラーが出てエクスポートできません。 対処法を教えてください。 Excelシートの次のようなデータをAccessへエクスポートしようと しています。 A B C D E F G(列) 1 ID  番号 地域  客先  売上金額 種類 数量 2    K01 東京    a社  100,000    イ  4 3    K02 神奈川  b社  50,000 Excelシートの1行にフィールド名があり、レコードがA2:G3入って いるとします。Accessの売上テーブルにExcelのフィールドと同じ 順番のフィールド名があった時、Excel VBAにてADOを使いAccess にデータを貼り付けようとすると、データ型がちがうとエラー表示 が出てしまいます。A2:A3はAccessの自動発番機能を使うのでいつも 空です。又F3:G3はデータがこの例のように空の場合もあります。 Excel側もAccess側もフィールドのデータ型は同じにしたつもりです が、レコードが空があることがエラーの原因でしょうか。もしそうなら どう対処すればよいのでしょうか。

  • Access2010 テーブルのフィールドについて

    Access2010を使用しています。 テーブルのフィールド定義 [A][B][C][D][E][F][G] ↓ テーブルを開くと [A][B][C][E][F][G][D] と勝手に変わる (あるフィールドだけ、別の場所に移動) ↓ フィールドの並び順を [A][B][C][D][E][F][G] に戻す ↓ 保存してテーブルを閉じる ↓ 再度開くと [A][B][C][E][F][G][D] と変わってしまう。 この繰り返しです。 どなたか、お助け下さい。 よろしくお願いいたします。

  • Accessのインポートについて(上書きと追加)

    Access2000を使用しています。 インポートについて教えて下さい。 あるテーブルにExcelデータをインポートしています。 「あるテーブル」の設定としましては主キーを設定して いて重複なしにしています。 実現したいこととしましては、Excelデータ上にAccessデータ(すでにあるデータ(主キー))があれば上書き保存して、なければ追加したいのです。 Access側        | Excel側 主キー フィールド1  |  列1  列2    A     ○      |   B   ○ B     ×      |   D   × C     ○      |   E   ×   つまり上記の表でAccess側Bデータのフィールド1の「×」 をExcelデータをインポートすることにより「○」に 変更(上書き保存)したいのです。 そして、Excel側D・EデータはAccessに新規レコードと して追加したいのです。 よい方法はないでしょうか? なお、私の知っている知識としましては、 インポートするとデータは上書き保存されずに 追加されてしまうということは知っているのですが。 以上、よろしくお願い致します。

  • テキストファイルのデータをエクセルへコピーのやり方

    よろしくお願いします。 エクセル2000を使っています。 テキストのデータで A1/B1/C1    /はスペースです。 D1/E1/F1    データの長さは全部違います。 A2/B2/C2     D2/E2/F2 A3/B3/C3     D3/E3/F3      ・    ・(続く) といったものがあります。これをエクセルで    A列 B列 C列 D列 E列 1行 A1 B1 C1 D1 E1 2行 A2 B2 C2 D2 E2  ・・・ 3行 A3 B3 C3 D3 E3  (続く)          ・          ・(続く) という感じで別々のセルにいれて貼り付けしたいのです。 テキストデータを別々のセルに貼り付けする方法は 過去ログで「区切り位置」というのをつかえばいいというのはわかりましたが、この場合の複数行にわたるテキストデータをエクセルの1行に貼り付けする方法がわかりません。また、データの長さが違うために「区切り位置」もうまくいきません。 良い解決法をお願いします。

  • accessからExcelへのエクスポート

    今、access初心者の私ですが、仕事上必要なので、クエリをエクセルにエクスポートしています。 しかし、実際に必要なデータは下記の例のように、クエリの演算したフィールドも含めて一部であって、クエリで表示させたフィールド全部がいるわけではないのです。 例)  <クエリ>               <エクセル> A B C D E F   ―エクスポート→  A C E F 演算フィールドの関係でどうしても表示させておかないと演算結果がエラーになってしまうので、クエリの表の状態では「A~F」はどうしてもいるのです。 これを、今はエクセルにエクスポートしてから「B」と「D」のフィールドを削除しているのですが、フィールドを選んでエクスポートってできないでしょうか? どなたかいい方法があれば教えて下さい。お願いします。

  • テキストデータの並べ方を変える

    すみません、エクセル操作で困っております。 エクセルは全くの初心者です。 たとえばa,b,c,d,e,f,gと並んでいるtxtデータがあるのですが、 これをExcel2007で開くと a,b,c,d,e,f,gという感じで横方向のセルに従って開いてしまうのですが、 これを a b c d e f g という感じで縦に並べ替えて読み込ませる方法はありませんでしょうか?

  • エクセル側からアクセスへデータ転送

    エクセル側からアクセスへデータを転送したく、 Sub Data_Add() Dim db As New ADODB.Connection Dim Rs As New ADODB.Recordset db.Open _ "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\Users\Owner\Desktop\A.mdb;" Rs.Open "B", db, adOpenStatic, adLockPessimistic Rs.AddNew Rs!a = Worksheets("1").Range("A1").Value Rs!b = Worksheets("1").Range("B1").Value Rs!c = Worksheets("1").Range("C1").Value Rs!d = Worksheets("1").Range("D1").Value Rs!e = Worksheets("1").Range("E1").Value Rs.Update Rs.Close db.Close これで、エクセルからアクセス"A"のテーブル"B"のフィールド"a"にエクセルの"A1"を、フィールド"b"にエクセルの"B1"をという風に、セル1つづつを転送させる事はできましたが、セル1つづつでは無く、A列をフィールド"a"に、B列をフィールド"b"にという風に、列ごと追加するにはどの様にしたらいいですか? 又、追加ではなく更新(すでにあったデータに追加するのではなく、上書き)するにはどの様にしたらいいですか? 追加、更新それぞれしたいので、誰か教えて頂けませんか? よろしくお願いします。

  • アクセス 複数データの変換

    アクセス、またはエクセルで、テーブルのデータを、ほかのテーブルを参照にして、一括で変化する方法を教えてください。 具体的には、一つのテーブルに a b c a b d e f b d f g h となっているデータがあって、もう一つのテーブルに a apple b lemon c orange となっている場合に、最初のテーブルのデータをすべて、その対応する第二テーブルの内容に変換する方法です。 よろしくお願いします。

  • エクセルでのデータの並べ替えについて

    質問があります。下記のように並んでいるデータがあるとします。   前年   今年 a 10 b 20 d 30 a 40 e 50 c 30 c 40 f 35 g 55 これを、  前年 今年 a 10 40 b    20 c 40 30 d 30 e 50 f    35 g 55 という様に並べ替える方法を教えてください。(データは多数あります。)

  • Excel 重複データの番号を抽出

    Excel:Office2003 OS:WindowsXP excelのデータで A列 B列 1 A 2 B 3 A 4 C 5 D 6 A 7 A 8 B 9 B 10 C 以上のように並んでいるデータを以下の E列 F列 G列 H列 I列 A 1 3 6 7 B 2 8 9 C 4 10 D 5 ようにしたい場合はどのようにしたらいいのか教えてください。 マクロではなく関数で処理をしたいと思っています。 よろしくお願いします。