IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

paramétrage pour une impression sur un copieur désigné [AC-2007]


Sujet :

Access

  1. #1
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 10
    Points
    10
    Par défaut paramétrage pour une impression sur un copieur désigné
    Bonjour,

    Je viens vers vous pour un souci de paramétrage d'impression et je pense que ma demande est de l'ordre du réalisable.

    J'ai crée une base Access déposé sur un serveur.

    Sur le serveur, il y a deux copieurs installés, appelons-les Copieur_1 et Copieur_2. Mais pour imprimer, le Superviseur a mis PDF Creator comme imprimante par défaut et je ne peux pas agir sur ce point-là.

    En revanche, je pense qu'il est possible de contourner cet obstacle en désignant le copieur voulu: via un premier bouton, je souhaiterais pouvoir déclencher directement l'impression d'un état une impression "ac ViewNormal" sur le copieur_1 et idem via un 2d bouton sur le copieur_2.

    j'ai en ma possession le nom des copieurs tels qu'ils sont identifiés sur le serveur ainsi que leurs adresses IP.

    J'ai tenté un Active.printer mais qui prend, comme je m'y attendais, l'imprimante par défaut.

    J'espère que mes explications sont claires et d'avance, merci d'avoir pris le temps de me lire.

    Cordialement,

    Emma.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Dans la faq (c'est la première recherche à faire avant de poste) :

    https://access.developpez.com/faq/?p...Etat#ChoixImpr

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    merci pour votre réponse.

    j'avais effectivement vu cette page mais je ne sais pas comment la mettre en oeuvre.

    je pensais, à tort, manifestement, qu'il existait une façon plus simple de procéder.

    Merci quand même

    Emma.

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Oups ! En effet c'est un vieux truc qu'il y dans cette faq.

    Il y a plus simple en effet :

    La collection Printers de l'objet Application fait ça très bien.

    Je dois avoir un exemple qui traine quelque par.

    Cordialement
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Voilà j'ai commenté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Option Compare Database
    Option Explicit
     
    Public defaultPrinter As Printer  'pour enregistrer l'imprimante par défaut avant modif
     
    Public Sub selectionneImprimante(deviceName As String)
    Dim prt As Printer
     
    defaultPrinter = Application.Printer
    Debug.Print "imprimante par défaut : " & defaultPrinter.deviceName
     
    For Each prt In Application.Printers
     
        Debug.Print "imprimante de la liste :" & prt.deviceName
        If prt.deviceName = deviceName Then
           Application.Printer = prt
        End If
    Next
     
    Debug.Print "nouvelle imprimante par défaut : " & Application.Printer.deviceName
     
    End Sub
     
    Public Sub ImprimanteParDefaut()
    'retour à l'imprimante par défaut enregistrée
        Application.Printer = defaultPrinter
    End Sub
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  6. #6
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,
    merci d 'avoir pris le temps de me répondre.

    Malheureusement, je ne comprends pas ce que je dois faire.
    Où est-ce que je renseigne les copieurs ?

    je ne veux pas mettre UN copieur par défaut: il y a 2 copieurs dans l'établissement, du coup, l'idée c'est que le prof puisse par le bouton A ou le bouton B imprimer directement sur le copieur qu'il veut en fonction de la salle où il se trouve et dans ce bouton , je rentre aussi des paramètres d'impression ( A4, recto-verso , A3 ...)

    Si cette méthode me propose un menu déroulant , c'est ce que j'ai déjà actuellement ( PDF creator par défaut, et la liste des copieurs dispo par la suite).

    je ne sais pas si je suis assez claire ou si ma demande est trop exigeante.

    Encore merci !

    Emma.

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Il ne peut n'y avoir qu'une imprimante par défaut à un instant T. C'est celle sur laquelle on dirige les impressions.
    Le but étant de changer avant l'impression l'imprimante par défaut. C'est l'objet du code fourni.

    Pour les boutons :

    Tu mets le code dans module VBA.

    Du bouton A tu appelles la procédure en lui donnant le nom du copieur A comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    selectionneImprimante "copieur A"
    Du bouton B tu appelles la même procédure en donnant le nom du copieur B :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    selectionneImprimante "copieur B"
    Pour revenir à l'imprimante par défaut (PDF ?) tu crées un troisième bouton et tu appelles la procédure ImprimanteParDefaut comme ceci :

    Tout simplement.

    Pour une gestion plus fine des options de l'imprimante il faut explorer les propriétés et méthodes de l'objet Application.Printer, il y a tout ce qu'il faut (Bac, recto/verso...)
    Et évidemment pour laisser le choix à l'utilisateur, il faudra passer par un formulaire qui explore les options, propose les options disponibles et permet de les modifier.
    Tout cela est possible, ça demande simplement du temps.

    Attention ! je vois que les imprimantes sont installées sur le serveur, mais sont-elles accessible depuis le poste client ? Si ce n'est pas le cas il faudra le faire. Windows n'imprime que sur une imprimante dont le pilote est installé.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  8. #8
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    merci pour la réponse. Tout de suite , ça me parait un peu complexe.

    Voyons voir si j'ai compris :

    1e étape, ( et non des moindres) :

    dans un module, j'écris quoi et comment: juste le nom du copieur ? son IP ? et je mets derrière les caractéristiques d'impression ? (A4, A3 ,...)

    2e étape ( de la gnognotte si la 1e partie est correctement saisie, je suppose)

    dans le bouton sur le formulaire de saisie des infos et d'impression de l'état correspondant un bouton qui rappelle ce module

    Merci.

    Emma.

  9. #9
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Pour répondre à tes questions :

    dans un module, j'écris quoi et comment: juste le nom du copieur ? son IP ? et je mets derrière les caractéristiques d'impression ? (A4, A3 ,...)
    Tu trouveras le code commenté dans l'exemple.
    - Oui il faut utiliser à minima un module standard, au mieux un module de classe (mais on va faire simple).
    Le nom de toutes les imprimantes INSTALLEES sur le poste est connu par Access. C'est la collection Application.Printers qui contient des Printer. Ces objets Printer contiennent les propriétés standard des imprimantes (bac, taille papier, marge).
    L'objet Application.Printer (sans 's') est l'imprimante par défaut qui est utilisée.

    - Non, on n'adresse pas d'édition avec un IP, avec Access on passe par les pilotes Windows.
    - Non, on ne met pas les options à la suite, on affecte les bonnes valeurs aux propriétés du Printer. ça fonctionne comme ça.
    https://learn.microsoft.com/fr-fr/of...access.printer

    En faire l'interface complète avec toutes les options possibles et disponibles (bac, format papier...) demande du temps.

    2e étape ( de la gnognotte si la 1e partie est correctement saisie, je suppose)

    dans le bouton sur le formulaire de saisie des infos et d'impression de l'état correspondant un bouton qui rappelle ce module
    On peut intercaler ce formulaire exemple au démarrage de l'application ou avant l'impression. Où bien faire quelque chose de plus "brut"/"moins propre" et redéfinir le Printer (sans 's') avec une nouvelle imprimante. On perdrait l'imprimante réglé par défaut. Mais est-ce bien important ?

    Voici l'exemple fonctionnel qui permet de gérer les imprimantes.printerUtil.zip

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  10. #10
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,
    merci pour la réponse ... qui malheureusement ne m'éclaire pas beaucoup.
    Je pense qu'on est là bien au-delà de mes compétences.

    Cette solution, aussi intéressante soit-elle, ne correspond pas à mon besoin. Choisir une imprimante dans un menu déroulant est déjà présent sur les PC et c'est cette étape que je voulais faire sauter.

    Les collègues continueront donc de travailler avec les possibilités existantes. Cependant, tout ce que vous avez posté me servira un jour ou l'autre. Et quand mes compétences seront un peu plus pointues je pense.

    Un grand merci.

    je mets le sujet en résolu: merci pour toutes les pistes évoquées même si ça ne répond pas à ma demande (qui n'est peut-être pas réalisable)


    Emma.

  11. #11
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    L'étape d'une impression à partir d'imprimantes installées sur le poste ne peut être évitée.
    MS Access comme tout logiciel d'édition a besoin de s'appuyer sur un pilote d'impression.

    Une fois que le nom des imprimantes à utiliser connu l'étape de la liste déroulante peut être évitée en choisissant toi-même le pilote à utiliser.
    C'est justement l'appel qui est fait sur le Après Mise à jour de la liste déroulante.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Macro pour une impression ne fonctionne pas
    Par aujero dans le forum Access
    Réponses: 2
    Dernier message: 01/06/2006, 17h23
  2. Syntaxe pour une recherche sur 2 listes déroutantes
    Par christ-94 dans le forum Access
    Réponses: 2
    Dernier message: 24/05/2006, 17h51
  3. Réponses: 2
    Dernier message: 10/05/2006, 09h22
  4. Réponses: 4
    Dernier message: 20/04/2006, 13h50
  5. Paramétrage pour l'impression
    Par zorba49 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 25/08/2005, 10h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo