• 締切済み

エクセル ユーザーフォームの住所録

エクセルVBAのユーザーフォームサンプルとして、住所録を見かけますが、 1.一方的に入力するだけでなく、既に入力したデータがあるかないかを検索し、ユーザーフォームに呼び出し、上書き、もしくは、新しいデータ(列)として追加することは可能でしょうか? 2.1.が無理な場合、入力したデータ側は触らずして、他に方法はないでしょうか?(エクセルにて) 3.2.が難しい場合、アクセスなら可能なのでしょうか? 住所録より少し複雑なデータ入力をユーザーフォームで作成しようと検討中です。宜しくお願いします。

みんなの回答

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

ユーザーフォームに、1商品分のデータ入力が終わったことを知らせるコマンドボタンを1つフォームに貼り付け、そのコマンドボタンのクリック・イベントで、 >既に入力したデータがあるかないかを(正確に表現のこと。例えば同じ商品コードが既に登録されているというようなことか?) そのイベント・プロシの中でチェックのコードを作って入れれば仕舞い。 しかし例えば重複しているかどうか検出するコードの作り方は色々アリ、そこでは経験が自ずと出てくる。 >ユーザーフォームに呼び出し  何を? >上書き 言及がシートに変わった?主語、目的語を質問でははっきりさせよう。 >新しいデータ(列)として 新しいデータ(行)として、が標準。 ーー イメージではデーターフォームでやってみて感じを掴んだら。 変更は変更として変更ボタンを押させる、抹消は抹消として抹消ボタンを押させる、のが標準かな。 入れてみて既に同じ商品コードが有るので、変更らしいとやるのは標準ではないだろう。 >住所録より少し複雑なデータ入力をユーザーフォーム 複雑というのが何かというのは、プログラムがわからないと、言いにくいのかもしれないが、少し推測ででも、複雑というのが何らしいのか書かないと、漠然としている。 プログラムの怖いところは、素人ではちょっとした違いとおもうことが、プログラムの複雑要因になる場合が有る(*1)。 ーーー 上記(*1)を勘案しても、おおよそ出来る内容に違いないとおもう。 しかしこれは業務処理的で、丸投げにコードで答えるわけには行かない(丸投げは規約違反)。 個人的には、今までVBAの経験なく、最初にこれをやるのには、独学では難しいおもう。 Access(またはそのVBA)の方が一般的にこういう処理の道具立ては整っている(例えばSQLが使えるとか)

0224
質問者

お礼

ありがとうございました。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

1.そのようにコードを組めば対応できます。 2.上記にて対応できるかと。 3.Accessなら尚可能ではないかと。 (ただ、それ以外に何をしたいのかが不明ですけど)

0224
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう