2016-12-22 18 views
0

私はこのコードを発見したので、開発者のチェックボックスを避けたいのですが、複数の列をチェックボックスにする必要があります。特に列4,5,6。特定のセルにのみチェックボックスを入力しようとしています

私は単純です。ここで私は

Option Explicit 
 

 
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
 
    With Target 
 
    'Column D 
 
     If .Column <> 4 Then Exit Sub 
 
     On Error Resume Next 
 
     If Asc(.Value) = 168 Then 
 
      .Font.Name = "Wingdings" 
 
      .Value = Chr(254) 
 
     Else: .Value = Chr(168) 
 
     End If 
 
    End With 
 
End Sub

おかげ

答えて

1

ただ、テスト列D、E、Fで働いているものです:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    With Target 
    'Column D & E & F 
     If .Column = 4 Or .Column = 5 Or .Column = 6 Then 
      On Error Resume Next 
      If Asc(.Value) = 168 Then 
       .Font.Name = "Wingdings" 
       .Value = Chr(254) 
      Else 
       .Value = Chr(168) 
      End If 
     End If 
    End With 
End Sub 
+0

、私はこれらを制限することができます方法はありますある範囲への羽ばたき。 D3:F13またはD3:ラストロー&E3:ラストロー&F3:ラストロー? –

+0

これは私がD3の範囲で得たものです:F13。セクシーではありませんが、もっとシンプルに動作します。 .Column = 4 And(Target.Row> = 3およびTarget.Row <= 13)または.Column = 5 And(Target.Row> = 3およびTarget.Row <= 13)または.Column = 6 And(Target .Row> = 3、Target.Row <= 13)そして、 –

関連する問題