こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel2010 VBA

Excel2010でVBAのフォームを使って「コマンドボタン」をクリックしたときにフォーム入力した内容をデータ(リスト)に転記(反映)させたいのですが どのようにしたらいいでしょうか?

コマンドボタンの作り方は分りましたがそのマクロを実行する内容(コード)の作り方がいまいちわかません

ちなみにデータ(リスト)は上から順番に空白の列を埋められていけばいいです

よろしくお願いします

投稿日時 - 2011-07-11 12:48:59

QNo.6868532

困ってます

質問者が選んだベストアンサー

再掲:
>どうしてもできないところは,改めて具体的な困っている様子と具体的な状況を添えて,新しいご質問として投稿し直して下さい。


当初のご質問が解決したら,ご相談は一度解決で閉じてください。とお話ししました。ヒトの話聞いてますか?

新たな疑問質問問題点は,「ついでに聞いちゃえ」でダラダラ続けるんじゃなく,状況を整理して新しいご相談として投稿し直してください。これはこちらのような質問相談掲示板ではごくごく一般的なマナーなので憶えておいてください。

#今回のように「ついでにあれもこれも教えて」ご相談があんまり多くて,ほとほとうんざりさせられています。





無視してほっぽっとこうかとよっぽど思いましたが,気を取り直して。

>コマンドボタンを連続でクリックすると次々にデータが入力されていきます

記入するボタンをクリックすれば,データが記入される。
ごくアタリマエの動作です。
データがあってボタンをクリックしたのに転記がされない方が,困った事態です。


で,裏を返せば:
private sub commandbutton1_click()
dim r as long
dim i
if me.textbox1 = "" then exit sub

r = worksheets("Sheet1").raneg("A65536").end(xlup).offset(1).row
worksheets("Sheet1").cells(r, "A").value = me.textbox1.value
worksheets("Sheet1").cells(r, "B").value = me.textbox2.value
worksheets("Sheet1").cells(r, "C").value = me.textbox3.value

for i = 1 to 3
me.controls("textbox" & i) = ""
next i

end sub

投稿日時 - 2011-07-12 01:53:46

お礼

ありがとー!
できたぜ!

投稿日時 - 2011-07-12 07:13:21

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

あなたの言ってる「フォーム」は,ユーザーフォーム(UserForm1など)で間違い無いのでしょうか。

そういう前提で
userform1にtextbox1からtextbox3とcommandbutton1が配置してあり,
commandbutton1をクリックするとtextbox1,2,3のデータをSheet1のABC列に記入します
(こういう具合に目に見えるように具体的に説明すると,ようやく具体的なマクロが書けます。今後のご参考に)


コマンドボタンを右クリックしてコードの表示を選び,現れたシートに下記をコピー貼り付ける
private sub commandbutton1_click()
dim r as long
r = worksheets("Sheet1").raneg("A65536").end(xlup).offset(1).row
worksheets("Sheet1").cells(r, "A").value = me.textbox1.value
worksheets("Sheet1").cells(r, "B").value = me.textbox2.value
worksheets("Sheet1").cells(r, "C").value = me.textbox3.value
end sub

「実はそうじゃない」部分についても適宜応用して,まずご自分で作成してみて下さい。
どうしてもできないところは,改めて具体的な困っている様子と具体的な状況を添えて,新しいご質問として投稿し直して下さい。

投稿日時 - 2011-07-11 12:59:45

お礼

ありがとうございました。
お陰様でその通りやってできました!
そして次の課題もでてきました…
コマンドボタンを連続でクリックすると次々にデータが入力されていきます
これを避ける方法はないのでしょうか?
例えば一回コマンドボタンをクリックしたらユーザーフォームが閉じるとか…

投稿日時 - 2011-07-12 00:40:09

あなたにオススメの質問