XL 2010 [RESOLU] Test activecell appartient à une plage

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
 

Staple1600

XLDnaute Barbatruc
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.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
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:

cp4

XLDnaute Barbatruc
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.
 

Staple1600

XLDnaute Barbatruc
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
 

Discussions similaires

Réponses
1
Affichages
119

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof