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

VBA Access Discussion :

Impression sur une imprimante sélectionnée au préalable


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut Impression sur une imprimante sélectionnée au préalable
    Bonjour,

    Dans mon application sous access, j'ai pu grace à une API windows récupérer toutes les imprimantes installées sur le pc de l'utilisateur.

    Dans un formulaire, je liste toutes les imprimantes de ma table "Impr".

    L'utilisateur peut cocher l'imprimante sur laquelle il veut imprimer l'état.

    Mon souci c'est que je ne sais pas comment faire pour l'impression se lance sur l'imprimante choisie ET bien sur sans que celle-ci devienne imprimante par défaut?????


    PAr avance merci.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Bonjour,

    Bon j'ai trouvé une partie de la solution de mon problème;

    A savoir récupérer dans une combobox, la liste des imprimantes installées sans changer l'imprimante par défaut.
    De plus, je supprime de la liste une imprimante "impr1".

    voici le bout de code utilisé:
    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
    Private Sub Form_Load()
    
    Dim prt As Printer
    
    Me.lstPrinters__.RowSourceType = "Value List"
    For Each prt In Application.Printers
    lstPrinters__.AddItem prt.DeviceName
    Next prt
    
    Me.lstPrinters__.RemoveItem ("impr1")
    
    End Sub
    
    Private Sub cmd_impr_Click()
    
    
    Application.Printer = Application.Printers(Me.lstPrinters__.Value)
    Set prt = Application.Printers(Me.lstPrinters__.Value)
    Report_etat1.Printer.Orientation = acPRORLandscape
    DoCmd.OpenReport "etat1",  acHidden
    
    DoCmd.Close acForm, "Choix Imprimante", acSaveNo
    DoCmd.Close acReport, "etat1", acSaveNo
    Mais voilà si un utilisateur d'un autre PC, n'a pas l'imprimante "impr1" d'installée sur son poste, il ya un message d'erreur disant que l'imprimante "impr1" n'a pas été trouvé. LOGIQUE.

    Que puis-je mettre dans mon IF si je veux que cela fonctionne sur n'importe quel poste, imprimante "impr1" installée ou non?

    Merci d'avance

    Merci d'avance.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Personne n'a une idée?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Bonjour, j'ai trouvé la solution.

    il fallait faire une boucle for qui parcoure toutes les occurences de ma combobox.

    A l'intérieur de cette boucle, un IF qui permet passer une variable à 1 si l'imprimante à masquée est trouvée.

    Après la boucle FOR, un IF qui permet d'enlever l'imprimante si elle a été trouvée (var1 =1).

    Ainsi, meme si une autre personne utilise mon application sur un autre poste, n'ayant pas les même noms d'imprimantes dans la blacklist, il n'aura pas un message bloquant.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/03/2015, 21h51
  2. [WD14] Impression sur une imprimante à tickets
    Par sousana_fly dans le forum WinDev
    Réponses: 3
    Dernier message: 20/10/2010, 18h50
  3. Impression sur une imprimante matricielle
    Par satmbal dans le forum BIRT
    Réponses: 5
    Dernier message: 17/09/2008, 09h03
  4. Forcer une impression sur une imprimante donnée
    Par Opo dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 26/02/2008, 20h44
  5. Forcer l'impression sur une imprimante
    Par Poussy-Puce dans le forum ASP
    Réponses: 1
    Dernier message: 21/11/2006, 00h27

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