Impression de feuille suivant une macro

Capitaine Flame

XLDnaute Nouveau
Bonjour,

J'ai un petit problème d'impression avec une macro.

Je résume.

A partir d'un tableau excel, dans lequel je rentre des informations comme le nom du client, le N° de la commande, la quantité, la date..., je sélectionne une famille (Sport_co ou Athlé), puis un sport (Basket, Foot...), et enfin une reférence produit.
Cette hierarchisation me premet de donner un chemin d'accès pour aller chercher un fichier excel du même nom produit pour imprimer toutes les feuilles qui le compose.

Mon problème est que dans ma macro je cite les feuilles à imprimer, mais suivant le fichier choisi, je n'ai pas toujours le même nombre de feuille.

Avec la macro suivante, je suis bloqué dès que le fichier choisi est avec 2 feuilles. La zone qui me pose problème est en rouge.

Avez-vous une soultion ?

Merci d'avance


Voici la macro :

Sub valider()

Dim z As Integer
Dim t As Integer
Dim i As Integer
Dim Filename1 As String
Dim q As Integer
Dim co As Integer
Dim cli As String
Dim dat As Date
Dim del As Date
Dim galv As String
Dim peint As String


With Sheets("Lancement")
z = Range("I65536").End(xlUp).Row

i = 8
t = z + 1

Do While i < t


q = Range("D" & i).Value
co = Range("C" & i).Value
cli = Range("B" & i).Text
dat = Range("E" & i).Value
del = Range("F" & i).Value
galv = Range("G" & i).Value
peint = Range("H" & i).Value


If Range("I" & i).Text = "Armatures_Standards" Then
Filename1 = "M:\Bureau Etudes\Produits\" & Range("I" & i).Text & "\" & Range("J" & i).Text & "\" & Range("J" & i).Text & "_Lancement_atelier"


Else

Filename1 = "M:\Bureau Etudes\Produits\" & Range("I" & i).Text & "\" & Range("J" & i).Text & "\" & Range("K" & i).Text & "\" & Range("K" & i).Text & "_Lancement_atelier"


End If


Workbooks.Open (Filename1)

Range("T7") = q
Range("E9") = co
Range("L9") = cli
Range("E10") = dat
Range("E12") = del

If Range("M13") = "" Then
Range("M13") = galv
Else
End If

If Range("T13") = "" Then
Range("T13") = peint
Else
End If

ActiveWorkbook.Worksheets(1).PrintPreview
ActiveWorkbook.Worksheets(2).PrintPreview
ActiveWorkbook.Worksheets(3).PrintPreview


ActiveWorkbook.Close


i = i + 1

Loop

End With
End Sub
 

Discussions similaires

Réponses
6
Affichages
335

Statistiques des forums

Discussions
313 061
Messages
2 094 928
Membres
106 129
dernier inscrit
Kami_54