

初めまして。ExcelのVBAをチャレンジしています。
初心者なので良くわからないため質問させて頂きました。
今、商品登録用のユーザーフォームを作成しています。
ユーザーフォームには
TextBox1=「商品No.」
TextBox2=「商品名」
TextBox3=「単価」
TextBox3=「仕入先」
CommandButton1=「登録」
CommandButton2=「終了」
があります。
「商品No.」,「商品名」,「単価」,「仕入先」を入力し、「登録」をクリックしたらExcelに横一列(参考1)に反映させ、入力・登録を繰り返し行い(商品が入ったら随時入力)下に追加していきたいのですが、どの様にすれば宜しいでしょうか?
<参考1>
A B C D
1 商品No. 商品名 単価 仕入先
2 001 ○○○ 10円 △△
3 ・ ・ ・ ・
4 ・ ・ ・ ・
5 ・ ・ ・ ・
No.2ベストアンサー
- 回答日時:
必要最低限のコードです。
実情に合わせて変更してください。
Private Sub CommandButton1_Click()
Dim i As Long
i = Range("A65536").End(xlUp).Row + 1
Range("A" & i) = Format(UserForm1.TextBox1.Value, "000")
Range("B" & i) = UserForm1.TextBox2.Value
Range("C" & i) = UserForm1.TextBox3.Value & "円"
Range("D" & i) = UserForm1.TextBox4.Value
End Sub
No.1
- 回答日時:
まず第一に原理的には下記になります。
Range("A2")=商品No
Range("B2")=商品名
Range("C2")=単価
Range("D2")=仕入先
1.Range("A1")の部分は動的に変わるので変数化した方が楽になります。
例えば下記のようにして
Cells(x,y)=商品No
xとyの値をその都度設定します。
2.Forなどのループ処理を入れるとコード的に美しくなります(修正も楽になります)。
3.常に最終行の次の行に入力するということになるので、最終行の取得を自動化することも必要です。
利用するのはUsedrangeやEnd(xlUp)になります。
参考
http://www.k1simplify.com/vba/tipsleaf/leaf23.html
最終的には上記内容をそれぞれ組み合わせて一本化します。
最初の部分以外は別に必須というわけでもないです。幾らでもやりようがあるので(例えば最終行はActiveCellのある行をそれとみなすとか、挿入する行はその都度ユーザーに選択させるとか)、泥臭い方法だけでも一応形にはなります。
正解が別にあるわけではないので、ヘルプや色々な参考サイトをまわって理解しやすいコードをコピペして、それを修正しながら作っていきましょう。
早速の回答有難うございました!
そうなんですよね、正解がある訳ではないので色々試してはみるのですが、なかなか上手くいかずいつも苦労しております。
参考サイトも教えてくださって有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
初歩的な事だと思います。 Sub...
-
エクセルVBA テキストボックス...
-
エディットボックスの入力制限...
-
VBAでInputBoxの再入力をさせる...
-
教えて!全角文字「μ」の半角
-
ExcelVBA No.を自動連番で設定...
-
テキストボックスの番号を使っ...
-
数字以外の入力をエラーにする...
-
TETXの入力制限について色々と…
-
TextBoxから数字が文字...
-
入力フォームの値をQRコードで...
-
excel vba でユーザーフォーム...
-
HTMLで入力値を半角大文字に制御
-
オンライン数式文書作成サイトm...
-
EXCEL VBA で指定した範囲に入...
-
uwsc webページ内のテキストボ...
-
「イ分」・・・フンという文字...
-
accessで該当するレコードがな...
-
お勧めSSLはどこですか?アルフ...
-
【VBA】入力フォームを使った、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA テキストボックス...
-
初歩的な事だと思います。 Sub...
-
テキストボックスの番号を使っ...
-
数字以外の入力をエラーにする...
-
Excel-VBAでInputBox+Pulldown...
-
EXCEL VBA で指定した範囲に入...
-
VBAでInputBoxの再入力をさせる...
-
エディットボックスの入力制限...
-
「イ分」・・・フンという文字...
-
入力フォームの値をQRコードで...
-
DataGridView 列ごとの入力制限
-
ExcelVBAのユーザーフォームで...
-
excel vba でユーザーフォーム...
-
教えて!全角文字「μ」の半角
-
DataGridViewの桁数制限に関して
-
HTMLで全角文字のみ入力するに...
-
VBA R1C1形式で変数の入力について
-
アクセスのマクロ
-
accessで該当するレコードがな...
-
c#でTextBoxの入力制限
おすすめ情報