Selection de cellules

Bonjour,

Voici mon besoin :
Je cherche à sélectionner en VBA toutes les cellules de ma feuille sauf certaines. J'ai donc penser à deux solutions :
1) Sélectionner les cellules que je ne voudrais pas modifier, puis inverser la sélection.
2) Sélectionner toutes mes cellules avec "Cells.Select", en excluant une plage nommée.

Cependant je n'y suis pas parvenu et c'est pour cela que je fais appel à vous.

Merci d'avance pour votre aide.

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Bonjour,

    Je cherche à sélectionner en VBA
    Déjà ça commence mal.... VBA et sélectionner ne devraient jamais être associés.

    Que veux tu faire de ta "sélection"?
    1. L'idée est la suivante : je souhaite masquer certaines certaines colonnes et certaines lignes

      Par exemple ici, je masque toutes les colonnes de F jusqu'à la fin et toutes les lignes jusqu'à la fin

      Sub test ()

      Range(Columns("F:F"), Selection.End(xlToRight)).EntireColumn.Hidden = True

      Range(Rows("20:20"), Selection.End(xlDown)).EntireRow.Hidden = True

      End Sub


      En revanche, je souhaite réaliser cette opération dans des cas plus complexe ou j'ai beaucoup colonnes. Ainsi si j'ai des colonnes sélectionner, je voudrais inverser la sélection pour masquer toutes les autres. De même j'aimerais avoir la possibilité d'avoir des cellules sélectionnées et ensuite inverser la sélection.
      1. Modérateur
        Ok. Dans ce sens là, pourquoi pas.

        Regarde ce code, il masque toutes les colonnes dont la 1ère cellule (Ligne 1) n'est pas sélectionnée.

        Sub test()
        Dim DrCol As Integer, Col As Integer
        
        DrCol = Cells.Columns.Count
        For Col = 1 To DrCol
            If Intersect(Cells(1, Col), Selection) Is Nothing Then Columns(Col).Hidden = True
        Next
        End Sub