
お世話になります。
最近AccessとVBAの学習を始めた者です。
Accessを用いて簡単な売上管理システムを作成しました。
システムを共有できるようにするためにSQLServerへの接続を試みています。
SQLServer内にAccessと同じデータ型のテーブルは作成済みです。
これにどのような方法でデータの追加などをするか調べても良く分かりません。
VBAでODBC接続を行うためのコードを記述するというところまで分かりました。
コードの例などあればすごく助かります。
私自身理解が不足しているため稚拙な文章ですがご了承ください。
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
リンクテーブルを使うのが一番幸せな方法。
ローカルの DB 内には外部 DB のテーブルへのリンク情報が保存される。
フォーム、クエリ、レポート、VBA コードなどからは、ローカルの DB にあるテーブルも、リンクテーブルも、どちらも違いなく扱えるというメリットがある。
ODBC を媒体にして VBA コードから外部 DB へ接続し、レコード群のやり取りだけを行う方法も可能だが、自由度は減る。
ユーザー側にある Access の DB にはユーザーが操作するフォームやレポートがあるわけだが、これらとデータの仲介が全て VBA コードによる処理となるため、"非 VBA" で接続する方法がとれない。
具体的には、フォームやレポートのデザイン画面でレコードソースを設定することができなかったり、Access 側のクエリが使用できなかったりする。
UI とデータをそこまで分離させようとするのであれば、Access じゃないほうがもっと便利に開発できるんじゃないか? と個人的には思う。
Visual Basic 2015 Express とかのがもっと本格的に、もっと自由に開発できる。
VBA のコードで作成した DAO または ADO の Reocordset オブジェクトをフォームの Recordset プロパティに設定して読み書きするためのサンプルは下記を参照。
https://msdn.microsoft.com/ja-jp/library/office/ …
DB からデータを取得したり、DB のデータを更新する部分は SQL 文を中心に処理することになるかと思います。
データを更新する場合は SQL Server 側に作成したストアド プロシージャーを VBA から呼び出して適切な更新値を与えてあげるやり方が主でしょうかね。
「ADO SQL Server」 あたりで検索していくと調査がはかどると思います。
No.1
- 回答日時:
ここに一通りの命令方法が記されていました。
トランザクションはありませんでしたが。
http://itmemo.net-luck.com/vba-database/
トランザクション方法はここにありました。
http://sak.cool.coocan.jp/w_sak3/doc/sysbrd/vb_s …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでデータシートに同じデ...
-
MySQL、Accessを利用したDBの設計
-
Oracleで上書きImportはできま...
-
Oracle
-
ColdFusionのfor文を...
-
MS-ACCESS VBA で外部のMDBに...
-
重複クエリを使ったデータ削除
-
ODBC接続で新しいレコードを追...
-
AC2000のクエリで重複データか...
-
Access2000でAccess97のテーブ...
-
Accessのテーブルデータを一気...
-
ビューのソートについて
-
結合テーブルでINSERTする方法...
-
定義域集計関数(D~関数)
-
EXCELデータからACCESSデータの...
-
MS Accessの列と行の入れ替えを...
-
「クリップボードにコピーされ...
-
CSVファイルを毎日、全レコード...
-
SELECT 文の NULL列は?
-
会社の飲み会の幹事になり、座...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでデータシートに同じデ...
-
Oracleで上書きImportはできま...
-
Accessのテーブルデータを一気...
-
テーブルで一番古いレコードだ...
-
このISAMでは、リンクテーブル・・
-
アクセス レコードセットを更...
-
ビューのソートについて
-
結合テーブルでINSERTする方法...
-
ORA-01401が表示され、データが...
-
ODBC接続で新しいレコードを追...
-
マテリアライズドビューとスナ...
-
MS Accessの列と行の入れ替えを...
-
accessでレコード更新直後の反...
-
重複クエリを使ったデータ削除
-
テーブル作成について
-
住所のDBテーブル、マスターの...
-
Access VBAからエクセルに出力...
-
構文エラー : 演算子がありませ...
-
処理の途中で停止させ、再開さ...
-
PostgreSQLでテーブル構成を変える
おすすめ情報