macro

zumye

XLDnaute Occasionnel
bonsoir le forum

Je voudrais à partir de ce vba se trouvant ma page principale:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$A$16" Then
Cells.EntireRow.Hidden = False: Cancel = True
ElseIf Target.Column = 1 And Target.Row > 1 And Target.Row < 65536 Then
Range(Cells(Target.Row + 1, 1), Cells(317, 1)).EntireRow.Hidden = True
ElseIf Target.Column = 2 And Target.Row > 1 And Target.Row < 64 Then
Range(Cells(Target.Row + 1, 1), Cells(65, 1)).EntireRow.Hidden = True: Cancel = True
ElseIf Target.Column = 2 And Target.Row > 67 And Target.Row < 114 Then
Range(Cells(Target.Row + 1, 1), Cells(115, 1)).EntireRow.Hidden = True: Cancel = True
ElseIf Target.Column = 2 And Target.Row > 67 And Target.Row < 164 Then
Range(Cells(Target.Row + 1, 1), Cells(165, 1)).EntireRow.Hidden = True: Cancel = True
ElseIf Target.Column = 2 And Target.Row > 67 And Target.Row < 214 Then
Range(Cells(Target.Row + 1, 1), Cells(215, 1)).EntireRow.Hidden = True: Cancel = True
ElseIf Target.Column = 2 And Target.Row > 67 And Target.Row < 264 Then
Range(Cells(Target.Row + 1, 1), Cells(265, 1)).EntireRow.Hidden = True: Cancel = True
ElseIf Target.Column = 2 And Target.Row > 67 And Target.Row < 314 Then
Range(Cells(Target.Row + 1, 1), Cells(315, 1)).EntireRow.Hidden = True: Cancel = True
End If
End Sub


j'aimerai à partir de ce vba se trouvant sur ma page principale trouvé une solution pour que sur cette page que je copie une cinquantaine de fois, évité de copié également ce vba une cinquantaine de fois.
Puis-je donc sur ma page principale faire appel un à nom (ex macro1) au lieu de ce long vba ce qui diminuerai considérablement le poid du fichier.

ex j'ai essayé:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
call macro1
end sub

et mis le le programme dans un module mais ca ne marche pas... comment faire ?

merci
 

Pierrot93

XLDnaute Barbatruc
Re : macro

Bonsoir Zumye

si tu veux que ce code se déclenche sur toutes tes feuiilles, mets le dans le module "thisworkbook" événement "SheetBeforeDoubleClick" :

Code:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
'ton code
End Sub

bonne soirée
@+
 

zumye

XLDnaute Occasionnel
Re : macro

bonjour le forum

dans ce vba qui concerne toute mes pages:

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
'le code
End Sub

je voudrai la meme chose à l'exeption d'une page nommée "recap"...
 

Pierrot93

XLDnaute Barbatruc
Re : macro

Bonjour Zumye

essaye comme ci dessous :

Code:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
If Sh.Name <> "recap" Then
'le code
End If
End Sub

bonne journée
@+
 

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
315 194
Messages
2 117 157
Membres
113 023
dernier inscrit
bilal h