XL 2010 [RESOLU] Test activecell appartient à une plage

  • Initiateur de la discussion Initiateur de la discussion cp4
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

cp4

XLDnaute Barbatruc
Bonjour🙂,

C'est peut-être évident pour certains. Mais là, je suis à sec.
Je voudrais tester que la cellule active appartient à une plage en vba.
J'ai commencé ainsi mon code. Merci pour votre aide.
VB:
Sub test()
Dim ws As Worksheet, plg As Range
Set ws = ThisWorkbook.Worksheets("maFeuille")
Set plg = ws.Range("C1:C" & ws.Range("C" & Rows.Count).End(xlUp).Row)

'if activecell in plg then  'plante

End Sub
 
Bonjour

Un truc du genre ferait l'affaire ?
VB:
Sub test()
Dim ws As Worksheet, plg As Range
Set ws = ThisWorkbook.Worksheets("maFeuille")
Set plg = ws.Range("C1:C" & ws.Range("C" & Rows.Count).End(xlUp).Row)
If Not Intersect(ActiveCell, plg) Is Nothing Then MsgBox ActiveCell.Address
End Sub
EDITION: Houps, désolé. Pas rafraichi.
Bonjour Phil69970

Il n'y a pas que moi qui n'est pas frais 😉
Bonjour Hasco.
 
Bonsoir à @cp4 🙂,@Hasco 🙂, @Phil69970 🙂
Bonsoir @Staple1600 🙂

Rien que pour montrer que l'intersect n'est pas une fatalité, voici une version avec Union (contradiction quand tu nous tiens...)

Et surtout pour saluer 🙂 les récentes réapparitions de @Staple1600 après sa cure à 9 mois de zéro XLD ( ou bien le temps d'une grossesse l'agrafe ? Le papa se porte-t-il bien 😜)

VB:
Sub Essai()
Dim plg As Range
   With ThisWorkbook.Worksheets("maFeuille")
      Set plg = .Range("C1:C" & .Range("C" & Rows.Count).End(xlUp).Row)
      If plg.Count = Union(plg, ActiveCell).Count Then
         MsgBox "Cellule active INCLUSE dans plg.", vbInformation
         'suite du code
      Else
         MsgBox "Cellule active ABSENTE de plg.", vbExclamation
         'suite du code
      End If
   End With
End Sub
 
Dernière édition:
Bonsoir à tous,

Rien que pour montrer que l'intersect n'est pas une fatalité, voici une version avec Union (contradiction quand tu nous tient...)

Et surtout pour saluer les récentes réapparitions de @Staple1600 après sa cure à 9 mois de zéro XLD ( ou bien le temps d'une grossesse l'agrafe ? Le papa se porte-t-il bien 😜)

VB:
Sub Essai()
Dim plg As Range
   With ThisWorkbook.Worksheets("maFeuille")
      Set plg = .Range("C1:C" & .Range("C" & Rows.Count).End(xlUp).Row)
      If plg.Count = Union(plg, ActiveCell).Count Then
         MsgBox "Cellule active INCLUSE dans plg.", vbInformation
         'suite du code
      Else
         MsgBox "Cellule active ABSENTE dans plg.", vbExclamation
         'suite du code
      End If
   End With
End Sub
Bonsoir Mapomme,

Merci beaucoup. c'est parfait pour moi.

Bonne soirée.
 
Bonsoir mapomme

Je me porte pas très bien
La preuve par le code 😉
Enrichi (BBcode):
Private Sub Worksheet_SelectionChange(ByVal r As Range)
On Error Resume Next
Select Case Intersect(r, Columns(3))
Case "Bazinga!"
'
Case Else
MsgBox "https://www.youtube.com/watch?v=Lbb5AkLWDzQ"
End Select
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
462
Réponses
3
Affichages
427
Retour