Macro imprimer presque finie à un détail près !!

pierrequimousse

XLDnaute Junior
Bonjour à tous,

je sollicite votre aide après quelques heure de "bidouille" et recherches en tout genre.

J'ai une macro qui imprime les onglets de plusieurs classeurs selon un paramètre (un no de semaine qui est le nom des onglets à imprimer)

Quand j'entre manuellement un n° dans ma macro ça fonctionne très bien... Quand j'essaie de faire référence à une cellule de mon fichier qui pilote cette macro, pour aller cherche le n° de semaine dans la cellule B2, j'ai un problème "code problème 13"

je me rend bien compte que c'est ma variable nosemaine qui ne va pas comme je voudrais (car en la supprimant et en entrant le n° en"manuel" ca fonctionne très bien)

Je suis sur que c'est une erreur toute bête que je ne referais plus ensuite, mais la, je rame...

Pouvez vous m'aider la dessus s'il vous plait ???

Sub ImprimerFichiers()
Dim chemin$, nomfich$
Dim nosemaine As Integer
Application.DisplayAlerts = False
chemin = ThisWorkbook.Path 'chemin d'accès du dossier
nosemaine = Sheets(Feuil1).Range(b2) 'nom de la feuille à imprimer (correspond à un n° de semaine entré dans mon fichier
'qui commande l'impression, ce n° est le nom de l'onglet à imprimer sur chaque fichier)
nomfich = Dir(chemin & "\*.xls") '1er fichier du dossier
While nomfich <> ""
If nomfich <> ThisWorkbook.Name Then
Workbooks.Open chemin & "\" & nomfich 'ouvre le [Edit] fichier
If Sheets(nosemaine).Range("m23").Value > 0 Then
Sheets(nosemaine).PrintOut 'Imprime feuil

End If
Workbooks(nomfich).Close ' ferme le [Edit] fichier
End If
nomfich = Dir 'fichier suivant du dossier
Wend
End Sub

Merci d'avance !!

Pierre, bientôt fan de VBA...
 

pierrequimousse

XLDnaute Junior
Re : Macro imprimer presque finie à un détail près !!

Merci Minick, mais j'avais déjà essayé, et j'ai toujours une "erreur 13, incompatibilité de type" sur la ligne de définition de "nosemaine"

Au passage, je me posais une question à propos des guillemets "" dans le langage VBA, qu'est ce que ça siginifie ? Par exemple on les voit souvent dans range("numéro de cellulle"). Peut être mon problème vient il de la ?

J'ai essayé aussi de faire :

nosemaine = Sheets(Feuil1).Range(b2).value

Mais j'ai toujours l'erreur 13... Grrrr !!

Merci pour vos conseils !
 

Minick

XLDnaute Impliqué
Re : Macro imprimer presque finie à un détail près !!

re,

A ben oui au temps pour moi.
Il manque les guillemets
Code:
nosemaine = Sheets("Feuil1").Range("b2")[/COLOR]

Devrait mieux passer...

Pour les guillements de Feuil1:
Sans , cela signifie que tu passes l'objet Feuil1 et nom le nom de la feuille 1

et pour B2 cela voudrait dire que tu as une variable b2 que tu aurait initilise plus haut dans le code

++
Minick
 

Discussions similaires

Statistiques des forums

Discussions
312 247
Messages
2 086 590
Membres
103 247
dernier inscrit
bottxok