Code VBA Excel

Résolu
Guiwii -  
 guiwii -
Bonjour a tous,

Excel 2003 et VBA

J'ai récupéré une macro sur internet, pour insérer des "X" 'Style case a cocher. Cette macro marche trés bien mais seulement pour une colone, j'aimerais pourvoir cocher plusieurs colonnes (Ex B , N , ...) dans un intervalle de ligne prédéfinie comme cela est déja le cas.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Cellule As Range
For Each Cellule In Selection
If Cellule.Row > 5 And Cellule.Row < 100 And Cellule.Column = 2 Then
If Cellule = "X" Then
Cellule = ""
Else
Cellule = "X"
End If
End If
Next Cellule
End Sub





Auriez vous une solution.

Merci d'avance

Guiwii

1 réponse

gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour

Afin que ta macro soit plus facilement modifiable je te propose de passer à la méthode select case plus souple.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Cellule As Range
For Each Cellule In Selection
    Select Case Cellule.Row
        Case 6 To 99        ' lignes 6 à 99
        Case Else
            Exit Sub
    End Select
    Select Case Cellule.Column
        Case 2, 14          ' colonnes 2 (B) ou 14 (N)
        Case Else
            Exit Sub
    End Select
    If Cellule = "X" Then
        Cellule = ""
    Else
        Cellule = "X"
    End If
Next Cellule
End Sub

Tu peux ainsi alterner entre les plages (6 To 99) et les valeurs séparées par virgule (2, 14) et toutes les valeurs non sélectionnées sortent de la macro.
0
guiwii
 
Super,

C'est exactement ca.

Merci Bcp

Guiwii
0