ユーザーフォームの内容が一部だけ残らない。
VBAを始めてまだ1週間ほどなのでどの部分を変えればよいのかわかりません。
どなたかわかる方が居れば回答をお願いします。
問題:下記の構文でTextBox2の内容だけが残らない。
UserFoem1で記入場所が7つあり、ボタン1(入力)を押すと
7つの内容がSheet(履歴表)に転記されます。
ボタン2(終了)を押すとUserFormが消えます。
そして転記された後、内容をそのまま7つのTextBoxに残したいと思っています。
TextBox1(txtDate)日付を自動で表示して、
TextBox3~7までは転記後も内容は残るのですが、
TextBox2の内容だけが残らないのです。
下記の構文はネット上でいろんな方のものをコピペして製作したので、
訳の分からない文字がたくさんあり理解をしていない部分はあります。
ですので回答をいただけるならTextBox2の問題解決と
下記の内容をもっとスマートな形に変えて
不要な部分を削除して頂けたらと思っています。
宜しくお願い致します。
Sub ユーザーフォームで履歴表へ入力する()
End Sub
Private Sub CommandButton1_Click()
Dim n As Long
With Worksheets("履歴表")
n = .Range("B" & Rows.Count).End(xlUp).Row 'Bの一番下を検索する
Cells(n + 1, 2).Value = txtDate.Value 'テキストボックス2に自動で日付を入れてB列へ
Cells(n + 1, 3).Value = TextBox2.Value 'C列へ代入
Cells(n + 1, 4).Value = TextBox3.Value 'D列へ代入
Cells(n + 1, 5).Value = TextBox4.Value 'E列へ代入
Cells(n + 1, 6).Value = TextBox5.Value 'F列へ代入
Cells(n + 1, 7).Value = TextBox6.Value 'G列へ代入
Cells(n + 1, 8).Value = TextBox7.Value 'H列へ代入
Range(Cells(n + 1, 2), Cells(n + 1, 2)).Offset(, -1).Value = Range(Cells(n + 1, 2), Cells(n + 1, 2)).Row - 4 'A列に番号を順番に入れる
End With
TextBox2.Value = ""
TextBox2.SetFocus
End Sub
Private Sub TextBox2_Change() '商品名
End Sub
Private Sub TextBox3_Change() '型式・形式
End Sub
Private Sub TextBox4_Change() '数量
End Sub
Private Sub TextBox5_Change() '客先
End Sub
Private Sub TextBox6_Change() '担当
End Sub
Private Sub TextBox7_Change() '備考
End Sub
Private Sub txtDate_Change()
End Sub
Private Sub UserForm_Click()
End Sub
Private Sub UserForm_Initialize()
UserForm1.txtDate.Value = Date
End Sub
Private Sub CommandButton2_Click()
Me.Hide
End Sub
お礼
完璧です。今日の5時間位なんだったのだろう・・・ 今日更にマスターしてみたいと強く思いました。 また教えを願うと思いますが宜しく願います。 有難うございました。