|
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
'A列セル選択右クリックでセルデータ収集後フォームを開く
Dim r As Range
Dim i As Single
If Target.Column <> 1 Then Exit Sub
If Target.Row = 1 Then Exit Sub
Cancel = True
UserForm1.Show 0
i = 1
For Each r In Target.Offset(, 1).Resize(, 6)
UserForm1.Controls("TextBox" & i).Text = r.Value
i = i + 1
Next r
End Sub
シートの該当行のA列セル選択右クリックでUserForm1上の各TextBoxにセルのデータを移動(転記)する上記のコードと、
Private Sub TextBox7_AfterUpdate()
'行番号入力でセルデータ収集
Dim t7 As Long
Dim i As Long
t7 = Me.TextBox7.Text
i = 1
For i = 1 To 6
Me.Controls("textbox" & i).Text = ActiveSheet.Cells(t7, i + 1).Value
Next i
ActiveSheet.Cells(t7, 1).Select
TextBox7.SetFocus
End Sub
もうひとつ、UserForm1上のTextBox7に行番号を入力して同様の結果がでるコードを教えてもらいました。
そして、自分なりに改良して7つあるTextBoxの内、2つをComboBoxへ変更したいと思い試行錯誤をしましたが、うまくいきません。
どう考えたらよいかご指導をお願いします。
全体の流れは、
vbalab.net/vbaqa/c-board.cgi?cmd=one;no=55757;id=excel
を参照してもらえばわかると思いますが、
データシートにある希望するその行のデータをフォームに表示し、
そのフォーム上で必要なTextBoxの項目に修正を加え、
印刷シートにフォーム上のTextBoxのデータを落として、
その印刷シートを印刷しようとしています。
よろしくお願いします。
|
|