エクセル2007VBA 連続データ(文字列)の入力
●質問の内容
エクセル2007のVBAでマクロを作成して
同じ列に次々と文字を入力していくには
どうすればよいでしょうか?
●質問の補足
ワークシートのA列に文字列を入力していくマクロを
作成しようとしています。コードの
概要は以下の通りです。
1.1回目の入力でA1セルには文字列は入力
2.1のあとフォーカスがテキストボックスに戻る。
3.2回目の入力でテキストボックスに文字列を入力
4.2回目の文字列がA2セル入力
しかし4のところでA1セルの内容を消去して
2回目の文字列をそのままA1セルに入力してしまいます。
コードに問題があると考えられますが、どこに
問題があるでしょうか?以下のコードと添付画像を
ご参照の上、ご教示くだされば幸いです。
なお添付画像の内容は、作成目標である
A列に次々と文字列が入力されていく
「模範解答」です。
●コード
(General)-連続データ入力
Sub 連続データ入力()
UserForm1.Show vbModal
End Sub
(General)-(Declaration)
Dim CelNo As String
Dim Pos As Integer
(UserForm1:UserForm_Initialize)
Private Sub UserForm_Initialize()
Pos = 1
CelNo = "A" & Pos
End Sub
(UserForm1:InputBtn_Click)
Private Sub InputBtn_Click()
With Worksheets("sheet1")
.Range(CelNo) = UserForm1.TextBox1.Text
Pos = 1
CelNo = "A" & Pos
.Range(CelNo).Activate
End With
UserForm1.TextBox1.Text = ""
UserForm1.TextBox1.SetFocus
End Sub
(UserForm1:CommandButton2_Click)
Private Sub CommandButton2_Click()
Unload UserForm1
End
End Sub
お礼
早速のご回答ありがとうございます。 ご指摘の通り Private Sub InputBtn_Click() … Pos = 1 を Private Sub InputBtn_Click() … Pos = Pos + 1 にしたら添付画像通りにマクロが 実行されました。 大変助かりました。