je n'arrive pas a faire fonctionner ce vba qui me permet d'imprimer a partir d'une colonne (comportant tout les noms des onglets) sur un double clic d'imprimer la page choisis.
j'ai dans un module :
Sub imprime(nom)
Dim L As Integer, i As Integer
L = Range("A65536").End(xlUp).Row 'déjà dans la feuille "Recap"
For i = 3 To L
If nom = "" Then Exit Sub
If nom = Range("A" & i) Then
Sheets(nom).Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
MsgBox " Cette feuille est en impression" 'point d'arrêt pour contrôle, pas envie d'imprimer
Sheets("Recap").Activate
Exit For
End If
Next
End Sub
et sur ma page ou se situe ma fameuse colonne a :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = False
nom = Target
imprime (nom) 'pour porter la variable
End Sub
mon probleme est quand je double clic sur un nom situé dans la colonne a j'ai la ligne "If nom = Range("A" & i) Then" qui est surligné en jaune"
ca ne marche tjs pas et en plus j'ai oublié de mettre le debut dans mon module j'ai :
Option Explicit
Public nom As String 'Public pour garder la valeur partout
Sub imprime(nom)
Dim L As Integer, i As Integer
L = Range("A65536").End(xlUp).Row 'déjà dans la feuille "Recap"
For i = 3 To L
If nom = "" Then Exit Sub
If nom = Range("A" & i) Then
Sheets(nom).Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
MsgBox " Cette feuille est en impression" 'point d'arrêt pour contrôle, pas envie d'imprimer
Sheets("Recap").Activate
Exit For
End If
Next
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, [A1:A3]) Is Nothing And Target <> "" Then
laFeuille = Target
Call imprime
Cancel = True
End If
End Sub
et dans un module :
Code:
Public laFeuille As String
Sub imprime()
Sheets(laFeuille).PrintPreview 'ou PrintOut
End Sub
je dois mal m'y prendre car il n'y aucune reaction
ma feuille ou se trouve le double clic s'appelle Recap
j'ai installé les VBA et remplacé le mot lafeuille par Recap
Recap = Target
Recap = Target
Sheets(Recap).PrintPreview