• ベストアンサー

ACCESSについて

アクセスでエクセルのデータを取り込んで使用していますが、 アクセスでテーブルのレコードを更新または追加した場合にエクセルのデータにも反映させるようにしたいのですが、何か方法はありますか。

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

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.4

>>リンクしたテーブルは更新や追加は出来ないようです >は私の例ではできましたが。 環境が新しい人ほど出来ないのです。(^^;) http://support.microsoft.com/kb/904953/JA/

参考URL:
http://support.microsoft.com/kb/904953/JA/

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

#1の補足の >リンクしたテーブルは更新や追加は出来ないようです は私の例ではできましたが。 http://smallbiz.nikkeibp.co.jp/members/QA/20040623/105040/

noname#22222
noname#22222
回答No.2

この件については、アイデアの合意が必要と思いますので... 1、Excelにシート名、行、列を記述した列[識別コード]を追加する。 2、列[識別コード]を含めてAccessにインポートする。 3、アクセスのテーブルに[ExcelUpdate](Yes/No)の列を追加する。 4、AccessにExcel更新機能を追加する。 ・列[[ExcelUpdate]=Noのレコードのデータをテキストファイルとして出力する。 ・当該のExcelをAccessから開く。 ・Excel の Auto_Open でテキストファイルを呼び込み更新する。 こんなアイデアは、いかがでしょう!

  • shut0325
  • ベストアンサー率40% (490/1207)
回答No.1

取り込む際に「インポート」ではなく「テーブルのリンク」を選ぶとよいです。

thespa
質問者

補足

リンクしたテーブルは更新や追加は出来ないようです。

関連するQ&A

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

    はじめまして。アクセス初心者です。 エクセルからアクセスへデータ転送したいのですが、エクセル側のデータを更新するのは、私では無く、ネットワークで繋がった会社の別の人が更新します。ですので、エクセル側のデータが更新されると、エクセルでマクロを実行し、アクセスのテーブルへデータが転送される様にしたいです。 又、データを転送する場合に、アクセスのあるテーブルのデータを全て消去して転送するパターンと、テーブルのデータの最後に追加してデータを転送させたい場合と2種類あります。 だれか教えて下さい。よろしくお願いします。

  • Access(アクセス)でのインポートについて

    テーブルのインポートでエクセルファイルをインポートしたいのですが「ワークシートインポートウィザード」の画面でテーブルを指定して保存すると 「Microsoft Access」の画面で「すべてのデータをテーブルに追加できませんでした。 キー違反のため、0件のレコードのデータが失われ、0件のレコードが削除されました。」と出てきて、保存できません。 もとのテーブルのデータ型を使ってインポートするにはどうしたらいいのでしょうか。よろしくお願いします。 インポートする元のデータ(エクセル)とインポート先(アクセス)の関係は次の通りです。 エクセルファイル    アクセスのテーブル (セルの書式設定)   データ型、フィールドサイズ --------------------------------------------- 数値          数値型、長整数型 文字列         テキスト型、16 インポートする前に元のエクセルデータをアクセスのデータ型に合わせただけではダメなのでしょうか

  • Access2003 データ型 オートナンバーについて エクセルからテ

    Access2003 データ型 オートナンバーについて エクセルからテーブルをインポートする方法 主キーである、IDと名をつけたフィールドのデータ型は"オートナンバー"でレコード新規入力際、自動で番号がふられていくようにしています。 このテーブルにエクセルのレコードをインポートして追加したいのですが、インポートできません。 ※オートナンバーフィールドが原因と思われます。 どうすれば、エクセルからこのテーブルにレコードをインポートし、追加されたレコードにオートナンバーで番号を割り振る事が出来ますででしょうか? 最も、シンプルな方法をお教え願います。

  • Accessでの新規レコードの追加の方法

    Windows XP上でMicrosoft Access 2000を使用しています。 オートナンバー型フィールド1つのみを含むテーブルに新規レコードを追加したいのですが、クエリやそれを基にしたフォームを介した方法はもちろんのこと、テーブルをデータシートビューで表示した状態でも追加することができません。 例えばレコードセレクタからレコード追加を選んでレコード保存を選んでも追加されません。 このテーブルに別のフィールドを追加してデータを入れるとレコードの追加が可能なのですが、オートナンバー型フィールド1つのみではうまくいきません。 どなたかオートナンバー型フィールド1つのみを含むテーブルに新規レコードを追加する方法を御存知でしたら御教示下さいませ。

  • ADOでエクセルからアクセスにデータを追加したいのですが、「CursorType」と「LockType」がどれが適切かわかりません。

    ADOでエクセルからアクセスにデータを追加したいだけなのですが 「CursorType」と「LockType」がどれが適切かわかりません。 CursorType 0 adOpenForwardOnly   レコードの前方スクロールだけが可能な静的カーソル。 (デフォルト) 1 adOpenKeyset 他のユーザによる変更データを参照可能。但し、追加データは参照できず、削除データにはアクセスできない。 2 adOpenDynamic 他のユーザーによる追加、変更、削除の操作が即座に反映される。 3 adOpenStatic レコード集合のコピーによる静的カーソル。前方、後方への移動が可能。 LockType 1 adLockReadOnly 読み取り専用。 2 adLockPessimistic レコード単位での排他的ロック。編集操作開始時にレコードをロックする。 3 adLockOptimistic レコード単位での共有的ロック。Updateメソッドを呼び出し時にレコードをロックする。 4 adLockBatchOptimistic 共有的バッチ更新。即時更新モードに対するバッチ更新モード。 ・エクセルもアクセスも使用しているのは自分ひとりです。 ・LockTypeについては Updateメソッドを使用してアクセスにデータを追加するため「adLockOptimistic」が適切かなと思うのですが CursorTypeの静的・動的がわからず判断できません。 ご教授よろしくお願いします。

  • Access 選択クエリーの入力制限

    Access97を使用しています。 選択クエリーを用いて単一テーブルの任意の列を表示 します。 元データは単一テーブルなので、選択クエリーに対して 新規レコードを追加すると、そのまま元のテーブルにも レコードが追加されますよね? この選択クエリーの機能を参照のみに限定し、 レコード追加・更新は制限したいのですが、これを実現 することはできるのでしょうか? データシート形式のフォームなら選択クエリーとほぼ 同じイメージで操作できるし、これならプロパティの 「追加の許可」「更新の許可」あたりを設定すれば レコード追加を抑制できると思いますが、極力選択 クエリーを使いたいんです。 よろしくお願いします。

  • アクセスでオートナンバーをリセットするには?

    Accessで連番をふるプロセスで質問です。 データをあるテーブルに追加した時に、連番をふりたいと考えています。 最も簡単なのはオートナンバーフィールドを設定する方法なのですが、この場合一つ欠点があります。 それはレコードを全削除した場合でもナンバーがリセットされないという事です。 追加クエリでテーブルにデータを追加する前に必ずテーブルのレコードを全削除するのですが、 この際にオートナンバーも一緒にリセットする方法は無いでしょうか? また、質問の題名とは変わってしまうかもしれませんが、 オートナンバーを使用せずにレコードに連番をふる方法があればご教授下さい。

  • ACCESS エクセルから インポート

    アクセスは メインテーブルとサブ(サブフォームで入力)からできています。 エクセルのデータは メインの項目名とサブの項目名が入ってます。 エクセルのデータで メインテーブルのキーとなるものは 追加と更新が混在しています。 この状態で エクセルから アクセスのテーブルに インポートする方法がわかりません。 よろしくお願いします。

  • マイクロソフトアクセス2007

    あるフォルダにエクセルのファイル"A"があります。 この"A"はほぼ毎日更新され内容が新しくなっていきます。 アクセスで、このエクセルのファイルをインポートし、あるテーブルの最後のレコードの下に追加したいのですが、クリック1つでこの動作を行える様にしたいです。 しかし、この"A"が以前インポートした時から更新されていれば、インポートをし、以前インポートした時から更新されていなければ、インポートをしない様にしたいのです。でないと、クリックした時に、以前と同じデータを追加してしまうので、新しいデータだけを追加できる様にできますか? この"A"は会社の他部署が更新していき、又、アクセス側でインポートをするのもバイトの方が行うので、この様にミスができない様にしたいのです。誰か教えて下さい。よろしくお願いします。

  • アクセスのテーブルの差分の抽出について

    アクセスの初心者です。今、仕事でデーターの差分の抽出の仕方についてわからず困っています。 2つのテーブルがあります。 テーブルには100以上の項目と500件ほどのレコードがそれぞれ入っています。 この2つのテーブルを比較して差分を出したいのですが方法が思いつきません。 出したいものは、テーブル1とテーブル2の共通のIDを比較し、 テーブル1からテーブル2で変更、追加されたものを出したいのです。 レコードの追加だけなら差分クエリを利用してやれると思うのですが、 100以上の全フィールドをそれぞれ比較するとなるとどうすれば良いのかわからないのです。 2つのテーブルの項目は基本一緒ですが、追加されたり、変更されたりします。 もともとはエクセルのデータで毎週やりとりされるもので、 エクセル上で手作業で、 シート1とシート2でマッチングを行い、シート3に追加、変更されたものを書き出しています。 100列ほどの項目も追加や変更されるので、前回データと今回データで (1)列の比較をして2つの列数を揃えてから、 (2)KEYになる列でVLOOKUP関数を使い、追加されたデータをよけて、 (3)前回データと今回データが一緒のデーター並べ替え、揃えて、シートを比較して変更、追加を探す という作業を行っています。 データー数が多く、エクセルでは限界がでてきました。 また、アクセスを使えば簡単にできる。と言われましたが、 まだまだ初心者のため、この大量のデータをどう処理すればいいのかわかりません。 質問は、 (1)アクセスで100項目以上あるテーブルのそれぞれの差分をだすことができるのでしょうか? (2)その方法はどうすればよいのでしょうか? また、アクセス初心者でも勉強すればすぐにできるのでしょうか? と、いうことです。 会社に迷惑をかけないためにも、可能、不可能を判断したいです。 よろしくお願いいたします。

専門家に質問してみよう