• 締切済み

EXCEL97 から ACCESS97 のテーブルを変更するには?

EXCEL97 の VBA を使って ACCESS97 のテーブルのデータを変更するには どうやれば、いいでしょうか?

みんなの回答

noname#192382
noname#192382
回答No.2

vbaを使わなくてもエクセルのデータをアクセスに取り込むことができますよ。 accessのプログラムの中でファイル→外部データの取り込み→ファイルの種類にはexcell、ファイル名を指定すればよいです。

COS_BUSTER
質問者

お礼

この方法は知ってます。イベント(タイミング?)はエクセル側に持たせる事が条件なので、この方法では、私がやろうとしてる事には使えません。

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

質問の意味をもう少し具体的に表現すべきでは (1)EXCEL97 の VBA を使って VBAコードをエクセルに置くだけで、参照設定などして、ADOなどを使うのか (2)変更するには 変更後のデータはどこに、どういう形であるのか (A)プログラムの中に組み込み   あるフィールドに文字列を受け加えるとか、値を何倍かする、フィールド間で計算するとか、ルールの決まった一律変更。 (B)フォームなどで手入力を受付てテーブルを更新など自由変更 (C)他のテーブルなどと付き合わせるとか参照して、フィールドの値を変更する (2)アクセスでSQL(アクションクエリ類)を使うのか。 (3)エクセルVBAから、アクセスVBAの世界にはいって、なにかテーブルに対し処理をするのか。DAOやADOを使うのか。 (4)エクセルへデータを持ってきて、シート上でデータを変更し、アクセスに戻すのか。 私の述べた観点が、見当はずれの場合は、能力不足のためです。お許しください。 質問者が思っていることや知っていることは、諮問の文章で説明しないと、読者には伝わらないことを留意ください。

COS_BUSTER
質問者

補足

どれかと言うと (B)フォームなどで手入力を受付てテーブルを更新など自由変更 ですね。 特定の場所にある特定のMDBの中の 特定のテーブル(1レコードのみ)の全項目を エクセルの特定セルの値に置き換える 上記をエクセルVBAでやる。

関連するQ&A

  • エクセルVBAでアクセステーブル更新

    エクセルとアクセスともに2003を使っています。 毎回エクセルでアクセスのテーブルに投入するデータを加工して、アクセスのテーブルに投入しているのですが、この過程をエクセルVBAを使って、自動的にアクセスのテーブルに投入していきたいと思っているのですが、教えて頂けないでしょうか? よろしくお願いします。

  • エクセルにアクセスのテーブルを読み込みたい

    エクセルにアクセスのデータ(テーブル)を引っ張りたいのですが、 その際 「データの取り込み」と「新しいデータベースクエリ」のどちらを選べばいいのでしょうか?

  • エクセルからアクセスのテーブルにデータ追加したい

    Excel(xls)からAccess(mdb)のテーブル(出力)にデータを追加できるVBAコードを教えてください。 条件 Accessの名前と場所 C:\SP3\Print.mdb テーブル名 (出力) (履歴) テーブル構造 (出力) (履歴)ともに、フィールド1~4、ID 履歴テーブルのIDは、カウントアップであり、プリント後のデータが格納される。エクセルでマクロを起動したときに、最初に履歴テーブルの最後のIDを知り、エクセルの対応するID列をレコード分だけ最後のID+1から通番を付ける。通番を付けたら、エクセルのフィールド1~4とIDのレコードセットを出力テーブルの該当列に追加する。 以上がやりたいことです。 エクセルに、10行から100行程度のデータを貼りつけて、このVBAを紐づけたマクロボタンを押したら、履歴テーブルの最後を調べて、その次の番号から順に、上からID列を更新して、その後、出力テーブルに追加したいのです。 検査機器用に専用開発されたプリントソフトがデータベースにAccessを持っていて、プリントソフトのフロントからデータを手入力する仕様なのですが、エクセルで加工したデータをAccessの所定のテーブルに横差ししたい考えです。対象のPCには、Accessをインストールしていないため、エクセル側からテーブルを操作したい理由です。 よろしくお願いします。

  • 【アクセス97】エクセルのシートを変更したい。。

    アクセスからエクセルにデータを書き込んでいます。(VBAで) そこで、エクセルのシート名を「sheet1」から「aaaaa」に変更したいのです。 どのようにしたらいいでしょうか。 ちなみに以前にアクセスで質問し、そのときに回答をいただいたものに追加するつもりです。。。 質問NO280074です。。 よろしくお願いします。

  • EXCELデータをリンクテーブルとしてACCESSで使う・・・・

    初心者ですが、よろしくお願いいたします。 顧客のデータをEXCELで管理しておりますが、ACCESSでの管理に変更します。そこで、ACCESSでの基盤となるデータなのですが、EXCELで入力して、それを毎日ACCESSのテーブルに引っ張ってくる方法をとりたいのです。過去のデータから現在のデータまで必要です。その方法なのですが、 (1)EXCELのデータをリンクしてリンクテーブルを作成。それをもとにフォームやレポートを作成・・・。 (2)削除クエリで前日の基盤のデータを丸ごと全部消してしまい、追加クエリで新データを丸ごと追加する。 ・・・と自分なりに2つの方法を考えたのですが、経験不足の為、これがベストの方法かよく分かりません。 みなさんは単純にEXCELのデータをACCESSのテーブルに毎日データを更新していくときはどのような方法をとっているのでしょうか。なにかスマートなやり方ありますでしょうか・・・。 よきアドバイスよろしくお願いいたします。

  • エクセルのデータをアクセスのテーブルに移動入力する

    エクセルのデータをアクセスのテーブルに移動入力するVBA フォルダAにおいて、a1.xlsxというファイルがあり、 そのsheet1のセル(a,1)=1 A1が1 とします その値をアクセスのデータベース(これもフォルダAにあります)  b.accdbのテーブル1の フィールド1に入力したいときの エクセルマクロのVBAを御教示いただけると助かります さらに続けて フォルダAにおいて、a2.xlsxというファイルがあり、 そのsheet1のセル(a,1)=2 A1が2 とします その値をアクセスのデータベース上記と同じ  b.accdbのテーブル1の フィールド1に追加で入力したいときの エクセルマクロのVBA 以上わかると助かります よろしくお願いします win10 office365

  • Accessのテーブルをエクセル出力するマクロ

    AccessのテーブルをVBAではなくマクロでエクセル出力したいと思っています。 マクロを使ってエクセル出力できるということはわかったのですが やり方がわかりません。 ご存知の方、教えてください。 よろしくお願いします。

  • Accessでリンクテーブルのパス変更

    Accessで処理mdbとデータmdbに分けて、データmdbをリンクテーブルとして読み込んでいるのですが、データmdbのパスが変わったとき、処理mdbでデータmdbのパスを変更しなければなりません。 それが、面倒なので、手軽に変更できるように作っているのですが、「MSysObjects」の「Database」を書き換えるようと、VBAでADODB処理をしているのですが、アップデートすると「更新可能なクエリであることが必要です。」となり、書き換えることが出来ません。 strSQL = "SELECT * FROM MSysObjects;" ~ data.open strSQL ~ data("Database") = NewDatabase data.Update といった感じの処理です。因みに環境はAccess2000です。 何か、リンクテーブルを自動で書き換える簡単な方法は無いものでしょうか。

  • Excelで入力したデータをAccessのテーブルに追加したい

    Accessに詳しい方に質問です。 Excelで入力したデータを、Accessのテーブルに追加したいのですが、サンプルソースなどを探してみるのですがなかなか見つからないので教えていただけると助かります。 勉強もかねて、家計簿を作ろうとしているのですが、 入力・集計結果表示はExcelで、データ管理をAccessで行いたいと思っています。例として、Accessのテーブルに追加したい項目として、 支出年月日、勘定科目、支出金額 を追加できるようにしたいのですが、VBAでどのように記述して良いのか行き詰まってしまっている状態です。 詳しい方、知恵を貸していただけないでしょうか。サンプルソースを掲示しているサイトでも教えていただけると助かります。

  • Access2003からピボットテーブルの作成

    ACCESSのVBAでピボットテーブルを作成する方法がわかりません。 ACCESSで作成したクエリをそのままデータソースに使用して EXCELの新しいWORKBOOKに出力したいと思っています。 どんな方法でもいいので知っている方がいれば教えていただきたいです。

専門家に質問してみよう