Besoind'aide sur les userform la fonction intersect vba et les liens hypertexte

cedric cc

XLDnaute Nouveau
Bonjour à tous
je me permets de sollicité votre aide sur un projet que je réaliser et que je dois rendre à la fin du mois.
je ne sais si je peux le poster pour que vous ayez un visuel car il fait 40Mo et je n arrive pas a le comprésser au max
bref voila dans le vif du sujet ce qui me pose probleme:
j ai créer un classeur avec 29 feuilles.
les 3 premières feuilles sont des base de données sur lesquelles je ne souhaite pas intervenir
les 14 dernières feuilles sont des tableaux de récupération de données sur lesquelles je ne souhaite pas non plus intervenir
j ai un UserForm1 avec 7 checkbox et 7 Textbox
j ai une feuille avec un calendrier et chaque jour est un lien hypertexte dans le classeur vers une feuille de saisie de la journée en cours
je souhaiterais que lorsque l'utilisateur entre une donnée dans l'une des 3000 cellules des colonnes D,J,M,P,S,V,Y ou AB des feuilles 4 à 15 cela lance le userform1
j ai placer le code suivant dans "this workbook"


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

'*********** Feuilles à exclure **************************
Select Case ActiveSheet.Name
Case Is = "1", "2", "3": Exit Sub

'*********** Pour les autres feuilles *******************************
Case Else
If Not Intersect(Target, Range("D:D,J:J,M:M,P:p,S:S,V:V,Y:Y,AB:AB ")) Is Nothing Then
UserForm1.Show
End If

End Select
End Sub

mais lorsque je fait un test cela fonction mais lorsque je clic sur un lien hyper text j ai le message suivant :
erreur 1004 la fonction intersect de l'objet _Global a échouer

je peu mettre un lien pour downloader mon projet si vous le souhaitez
j espère avoir été clair car je débute en VB et cela est un peux brouillon dans mon esprit

je vous remercie infiniment de votre aide
à très vite
cedric cc
 

Modeste

XLDnaute Barbatruc
Re : Besoind'aide sur les userform la fonction intersect vba et les liens hypertexte

Bonjour cedric cc, bienvenue (... si tu repasses par ici :p)

Sans le moindre petit bout de fichier à se mettre sous la dent, c'est compliqué! Ceci dit, je n'aurais pas, pour autant, téléchargé un fichier de 40 Mo :eek:

Cependant, si tu nous dit:
je souhaiterais que lorsque l'utilisateur entre une donnée dans l'une des 3000 cellules des colonnes D,J,M,P,S,V,Y ou AB des feuilles 4 à 15 cela lance le userform1

L'aide en ligne précise au sujet de l'événement SheetSelectionChange (que tu utilises)
Cet événement survient lorsque la sélection change sur une feuille de calcul quelconque

... Ne vaudrait-il pas mieux utiliser l'événement SheetChange:
Cet événement se produit lorsque des cellules d'une feuille de calcul sont modifiées par l'utilisateur ou par un lien externe :confused:
 

Si...

XLDnaute Barbatruc
Re : Besoind'aide sur les userform la fonction intersect vba et les liens hypertexte

Salut,
revoir le "Range" :) et espace final) et l'évènnement.
et ainSi... ?
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  Select Case Sh.Name
  Case Is = "1", "2", "3": Exit Sub
  End Select
  If Intersect(Target, Range("D:D,J:J,M:M,P:P,S:S,V:V,Y:Y,AB:AB")) Is Nothing Then Exit Sub
  UserForm1.Show
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 097
Membres
103 116
dernier inscrit
kutobi87