imprimer une liste déroulante (macro)

GroOouink

XLDnaute Nouveau
Bonsoir à tous, bonsoir le forum

n’étant pas quelqu'un de calé en prog, je me tourne vers vous :cool:

je souhaite créer une macro qui imprime la liste déroulante qui est en C6 sur la feuille suivi cariste.

lorsque j'enregistre la macro, j'obtiens ce que je veux :
- page 1, affectation cariste par circuit
- page 2 et les autres, suivit caristes avec le collaborateur et le n°chariot /ou la mission confiée

mais lorsque je la lance, obtiens bien la page 1, mais plusieurs fois la même page 2 sans modif

1- pourquoi ?
2- est il possible de m'aider ?
3- ça serais chouette de votre part
4- merci
5- merci
6- et encore merci ;)

ps: fichier excel joint
 

Pièces jointes

  • affectations nuit 2015_essai.xlsm
    111.3 KB · Affichages: 43

Paf

XLDnaute Barbatruc
Re : imprimer une liste déroulante (macro)

Bonjour

si j'ai bien compris

Code:
Sub imprimer_tout()
 ' imprimer_tout Macro
 ' imprimer feuille affectation et feuilles suivi cariste

 WorkSheets("affectation_cariste_par_circuit").PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
 For Each Nom In [affectations]
    With WorkSheets("suivi cariste")
        .Range("C6") = Nom
        .PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    End With
 Next
End Sub

A+
 

GroOouink

XLDnaute Nouveau
Re : imprimer une liste déroulante (macro)

bonjour Paf, bonjour le forum,

exactement dans ce que je recherchais !!!!

je te dédis les points 4, 5, et 6 de ma question.
et salut au passage la pertinence de ce forum ainsi que l'ensemble de ses membres ;)

+++
 

GroOouink

XLDnaute Nouveau
Re : imprimer une liste déroulante (macro)

Bonjour le forum,

j'ai omis de préciser dans ce post, que je voulais que certaines pages ne s'impriment pas (écologie oblige :) )

Code:
Sub imprimer_tout()
 ' imprimer_tout Macro
 ' imprimer feuille affectation et feuilles suivi cariste

 Worksheets("affectation_cariste_par_circuit").PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
 For Each Nom In [affectations]
    p = 1
    With Worksheets("suivi cariste")
        .Range("C6") = Nom
        .If Nom = "" Or Nom = "NON AFFECTE" Then p = 0  'ne pas imprimer les feuilles suivi cariste qui sont vides ou qui contiennent NON AFFECTE
        .PrintOut Copies:=p, Collate:=True, IgnorePrintAreas:=False
    End With
 Next
End Sub

Aussi j'ai rajouté cette ligne test, "bricolée".... et je "bricole" mal

merci de votre aide.
Cdt.
 

Paf

XLDnaute Barbatruc
Re : imprimer une liste déroulante (macro)

Bonjour

la plage nommées affectations couvre la plage A7:A25 de la feuille affectation_cariste_par_circuit, cette plage ne contient que des noms de personnes sans cellule vide.
Filtrer les cellules vides et celles contenant "NON AFFECTE" n'a aucun sens puisqu'on ne rencontrera jamais ces valeurs dans la plage nommée.

Ou on n'a pas le même classeur!, ou il faut apporter des précisions.

par ailleurs modifier la valeur de la variable p (p=0, p=1) ne sert à rien puisqu'on ne l'utilise jamais dans un test!

A+
 

GroOouink

XLDnaute Nouveau
Re : imprimer une liste déroulante (macro)

Re- bonjour,

Effectivement, dans le fichier envoyé, toutes les cellules sur la feuille affectation on été occupées.

fichier ci joint (le même mais sur une autre config de répartition de taches) sera plus parlant et plus proche des cas quotidiens.

Cdt.
 

Pièces jointes

  • affectations nuit 2015_essai (1).xlsm
    108.8 KB · Affichages: 26

Paf

XLDnaute Barbatruc
Re : imprimer une liste déroulante (macro)

Re

ça devrait marcher comme ça:

Code:
Sub imprimer_tout()
 ' imprimer_tout Macro
 ' imprimer feuille affectation et feuilles suivi cariste

 Worksheets("affectation_cariste_par_circuit").PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
 With Worksheets("suivi cariste")
 For Each Nom In [affectations]
    If Nom <> "" And Nom <> "NON AFFECTE" Then
        .Range("C6") = Nom
        .PrintPreview Copies:=1, Collate:=True, IgnorePrintAreas:=False
    End If
 Next
 End With
End Sub

A+
 

Discussions similaires

Réponses
36
Affichages
2 K