Accessをバックエンドとフロントエンドに分割した場合、excel VBAで操作する場合は、どちらのdbに接続すればよいのでしょうか?

Microsoft Access | Excel44閲覧xmlns="http://www.w3.org/2000/svg">100

ベストアンサー

0

ThanksImg質問者からのお礼コメント

回答ありがとうございました。 同時アクセスが起こる可能性を考えて分割式がよいのかなと考えていました。 速くなるというよりは、多人数で運用する場合に遅くなりにくいと考えるのがよいみたいですね。 手掛かりはつかめましたのでなんとかやってみようと思います。 詳しく解説していただきましたので、ベストアンサーとさせていただこうと思います。

お礼日時:7/19 11:57

その他の回答(1件)

0

>Accessを分割すると処理が早くなる >という情報をみつけ、 ↑ これウソです。 単にバックエンドとフロントエンドに分けただけじゃ基本的には速くなりません。 バックとフロントに分割したあと、 『 何らかの適切な設定や裏セオリーを実行しないと 』、 絶対に速くなりません。 また速くなると言っても、 適切な設定を施す事が前提で、 でもそれでも 『 バックをフロントに分割して複数端末から同時アクセスした際にめっちゃ遅くなる』 というのが、Access本来の速度に「近くなる」「近くに戻るだけ」です。 サーバーにデータ置いたら、ローカルPC内にデータを置いた時よりも、絶対に、死んでも、速くはなりません。 近くなるか、かなりマシにはなりますが。 バックとフロントに「分けただけ」じゃ絶対に速くはなりません。 「運良く」、速度の「低下が」 「たまたま」「大きくは」「起こらなかった」、、、 という状況はあり得ますけど。 それを「速くなった」と勘違いすると、今後にメンテが一切できなくなります。 完全に騙されてると思います。 誰が書いた情報を読んでしまったのかわかりませんが、信じない方がいいと思います。 あと、 「ExcelからAccessのデータを読みに行く」際は、 「テーブルかクエリを読みに行く」という事になるわけですが、 それは、バック、フロント、どっちのテーブルやクエリを読みに行っても構いません。 「目的に応じてお好きな方で。」 という事になります。 ただ、まともな作りにしてあれば、「バックエンドのほう」のテーブルやクエリを読みに行くことの方が多くなると思います。 ただクエリを読みに行く場合は、そのクエリの中に、 「Accessにしか存在しないVBA関数」や 「自作のユーザー定義関数」、 「Access側のフォームのテキストボックス名やコンボボックス名」、 などが書かれていると、Excel側にはそれはもともと無い訳なので、エラーになります。

クエリではなくてテーブルを読みに行く場合はそのようなトラブルは起こらないはずです。 ※テーブル=実表、実データ クエリ=実表をモトにした仮装表