XL 2021 Sélectionner plusieurs plages jusqu'à la dernière ligne NON vide en col "E"

Usine à gaz

XLDnaute Barbatruc
Bjr à toutes et à tous :)

Je n'arrive pas à coder correctement :
Sélectionner plusieurs plages (cellules visibles) jusqu'à la dernière ligne NON vide en col "E"

Besoin : Je voudrais sélectionner "J7:M30000,P7:p30000,R7:S30000" jusq'à la dernière ligne NON vide col "E"
En remplaçant "J7:M30000 par jusqu'à dernière ligne,P7:p30000 par jusqu'à dernière ligne,R7:S30000 par jusqu'à dernière ligne"

J'ai tenté des codes sans résultat.

Mon code "pas bon" :
VB:
Sub sélection()
Application.EnableEvents = False
    Range("J7:M[B]30000[/B],P7:P[B]30000[/B],R7:S[B]30000[/B]").SpecialCells(xlCellTypeVisible).Select  'Selectionne cellules visibles
    Application.EnableEvents = True
    Exit Sub
End Sub

Pourriez-vous m'aider ?
Un grand merci à toutes et à tous :)
Je joins un petit fichier test et je continue mes recherches...
:)
 

Pièces jointes

  • selection test.xlsm
    23.4 KB · Affichages: 0
Dernière édition:
Solution
Bonjour Lionel,
Essayez avec :
VB:
Sub sélection()
Application.EnableEvents = False
    DL = Range("E100000").End(xlUp).Row
    Set Plage = Application.Union(Range("J7:M" & DL), Range("P7:P" & DL), Range("R7:S" & DL))
    Plage.SpecialCells(xlCellTypeVisible).Select 'Selectionne cellules visibles
    Application.EnableEvents = True
End Sub

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Lionel,
Essayez avec :
VB:
Sub sélection()
Application.EnableEvents = False
    DL = Range("E100000").End(xlUp).Row
    Set Plage = Application.Union(Range("J7:M" & DL), Range("P7:P" & DL), Range("R7:S" & DL))
    Plage.SpecialCells(xlCellTypeVisible).Select 'Selectionne cellules visibles
    Application.EnableEvents = True
End Sub
 

Usine à gaz

XLDnaute Barbatruc
Re :)
Bizarre pour moi lol
Dans mon fichier de travail :
1707573760819.png

Pourtant, j'ai juste copié ton code :)
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Si vous avez en tête de macro "Option explicit" alors rajoutez "Dim DL as Long, Plage as Range"
VB:
Option explicit
Sub sélection()
Dim DL As Long, Plage As Range
Application.EnableEvents = False
DL = Range("E100000").End(xlUp).Row
Set Plage = Application.Union(Range("J7:M" & DL), Range("P7:P" & DL), Range("R7:S" & DL))
Plage.SpecialCells(xlCellTypeVisible).Select 'Selectionne cellules visibles
Application.EnableEvents = True
End Sub
 

Pièces jointes

  • selection test (1).xlsm
    21.3 KB · Affichages: 1

Discussions similaires

Statistiques des forums

Discussions
315 091
Messages
2 116 109
Membres
112 662
dernier inscrit
lou75