Windows7、Access2010です。

【構成】
・クライアント側
  ・Access2010 Runtimeがインストールされています。
  ・mdb・・・VBA、フォーム、レポート、一時テーブル
・サーバー側
  ・Access2010がインストールされています。
  ・mdb・・・「商品マスタ」(リンクテーブル)(1万レコード)

「商品マスタ」から「品名=りんご」のデータをフォームに表示するとき、
  rs.open "商品マスタ"・・・
  rs.find "品名='りんご'"・・・
のやり方だと、普通にJETの仕様としてLAN上を1万件のデータが流れてしまうかと思います。

ここを改善できないものかと考えているのですが、例えば
  strSQL="select * from 商品マスタ where 品名='りんご';"・・・
  rs.open strSQL・・・
とやれば、サーバー側のJETで処理されて結果だけが返ってくるようになりますでしょうか?

また、これでもやっぱり1万件全部ローカルに持ってきてしまうという場合、
サーバー側mdbをSQLServerにすれば、結果だけが返ってくるようになりますでしょうか?

よろしくお願いいたします。