質問: エクセルvbaでテキストボックスに入力があった場合のみ、ワークシートに転記したい 現在顧客名簿シートがあり、修正フォームから顧客情報を修正できるようにマクロを組んでいる最中です。 例えば、textbox1→氏名、textbox2→生年月日、textbox3→住所、としていて、住所のみ変更情報を入力し修正ボタンをクリックすると氏名、生年月日が未入力のため顧客名簿の氏名、生年月日が消えてしまいます。 このような場合、入力がないtextboxのシート転記プログラムを飛ばす、若しくは入力があるtextboxのみシート転記を実施する方法を教えてください。
回答: テキストボックスのデータをセルの値の修正で使用後必ず空白に設定しておく。 修正ボタンが押されたとき、各テキストボックスの値をif文で聞いて、空白なら、セルへ代入するコード行を飛ばし、(空白でなければ、そのセルの値にテキストボックスの値を代入するコードを実行して、書き換え)次のtextbox2などの判断・処理に移ればよいだけでは。 ーー 余分を付け加えると エクセル向けのメニューのデーターフォームの機能などの利用や、 修正データ入力用エリアについてエクセルのセルを利用する などもあって、テキストボックス利用は大げさだな、 セルに直接入れるのがエクセルの常道でもあるし。 自分以外の者が修正入力するのですか。