1つだけ過去を変えられるとしたら?

現在顧客名簿シートがあり、修正フォームから顧客情報を修正できるようにマクロを組んでいる最中です。
 例えば、textbox1→氏名、textbox2→生年月日、textbox3→住所、としていて、住所のみ変更情報を入力し修正ボタンをクリックすると氏名、生年月日が未入力のため顧客名簿の氏名、生年月日が消えてしまいます。
 このような場合、入力がないtextboxのシート転記プログラムを飛ばす、若しくは入力があるtextboxのみシート転記を実施する方法を教えてください。

A 回答 (3件)

氏名=textbox1.value


生年月日=textbox2.value
住所=textbox3.value

とかなっている部分があれば、
if textbox1.value <> "" then
氏名=textbox1.value
end if
if textbox2.value <> "" then
生年月日=textbox2.value
end if
if textbox3.value <> "" then
住所=textbox31.value
end if

とかしてあげればokだと思います。
入力があるときだけ書き換えるということ。
    • good
    • 0
この回答へのお礼

ありがとうございました。
うまくいきました(^_^)

お礼日時:2008/07/16 15:40

テキストボックスのデータをセルの値の修正で使用後必ず空白に設定しておく。


修正ボタンが押されたとき、各テキストボックスの値をIF文で聞いて、空白なら、セルへ代入するコード行を飛ばし、(空白でなければ、そのセルの値にテキストボックスの値を代入するコードを実行して、書き換え)次のTextBox2などの判断・処理に移ればよいだけでは。
ーー
余分を付け加えると
エクセル向けのメニューのデーターフォームの機能などの利用や、
修正データ入力用エリアについてエクセルのセルを利用する
などもあって、テキストボックス利用は大げさだな、
セルに直接入れるのがエクセルの常道でもあるし。
自分以外の者が修正入力するのですか。
    • good
    • 1
この回答へのお礼

丁寧にありがとうございました。
テキストボックス3つの例を挙げましたが、実際には項目が180近くある上、複数人で作業しています。
参考になりました。

お礼日時:2008/07/16 15:43

これじゃダメなの?


****************************
if textbox1.Value <> Empty Then
「シートに入力」
End If
****************************
    • good
    • 0
この回答へのお礼

ありがとうございました。
初歩的なことですみません(^_^;)

お礼日時:2008/07/16 15:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A