|
Selectionが複数範囲のセル群を参照している場合の対応方法ですね?
簡単な方法としては、Selectionから一つ一つのセルを取り出して、
各々に対して判定、セットしてやるように変更すればいいでしょう。
各々のセルを見ていくようにするのはFor Eachループで行います。
提示のコードをちょこっと変更するとすれば、
Private Sub CommandButton1_Click()
Dim s1 As String, s2 As Variant
Dim c As Range
s1 = Me.TextBox1.Text & vbCrLf & _
Me.TextBox2.Text & vbCrLf & _
Me.TextBox3.Text
s2 = Me.TextBox4.Value
For Each c In Selection
With c
If .Interior.Pattern = xlGray8 Then
.ClearComments 'コメントのクリア
.AddComment(s1).Visible = False 'コメントの非表示
.Value = s2
End If
End With
Next
End Sub
と言った感じでしょうか。
注)
このコードは、CommandButton1やTextBox1〜4が配置されている
UserForm3のフォームモジュールのコードであると解釈しました。
|
|