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

Macros et VBA Excel Discussion :

Gestion des impressions


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Par défaut Gestion des impressions
    Bonjour à tous,

    Totalement novice en VBA je bute depuis quelques jours, malgré de nombreuses recherches sur le net, sur un code qui me permet de gérer les impressions de telles ou telles feuilles.

    Le code VBA dans la feuille "impression" du fichier joint (via les boutons) me permet d'imprimer directement les feuilles que je choisis. Mon problème est qu'il m'imprime toutes les pages des feuilles choisies alors que je ne voudrais imprimer que la première ou la seconde page.

    J'espère avoir été assez clair,
    un grand merci pour aide car je désespère de trouver une solution

    Val

    Voici mon code VBA
    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
    Private Sub CommandButton2_Click()
    'Impression de Novembre
    'Imprime les onglets en fonction du choix : 1 imprime la feuille, 0 n'imprime pas
    Select Case MsgBox("Confirmez-vous l'impression du moi de Novembre ?", vbYesNo + vbInformation, "Confirmation")
        Case vbYes
            Dim vararray() As String
            csname = Range("D7").Column
            c = Range("E7").Column
            Set sname = ActiveSheet
            r = Range("E7").Row
            countarr = 0
            While sname.Cells(r, csname) <> ""
            If sname.Cells(r, c) = 1 Then
            ReDim Preserve vararray(countarr)
            vararray(countarr) = sname.Cells(r, csname).Value
            countarr = countarr + 1
            End If
            r = r + 1
            Wend
            Sheets(vararray).Select
            ActiveWindow.SelectedSheets.PrintOut From:=1, to:=1, Copies:=1, Collate:=True
            sname.Activate
            MsgBox ("Impression en cours")
        Case vbNo
    End Select
    End Sub

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 56
    Par défaut
    Salut,

    As tu envisagé de définir la zone d'impression uniquement sur la partie à imprimer? Peut être que ça pourrait résoudre ton problème en n'imprimant qu'une partie de la feuille en codant un truc du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Sheet1").PageSetup.PrintArea = "$A$1:$C$5"
    A+

    Captain

Discussions similaires

  1. Gestion des impressions avec AIX
    Par passou dans le forum AIX
    Réponses: 1
    Dernier message: 19/05/2009, 09h28
  2. [Conception] Gestion des impressions
    Par fofovi72 dans le forum Général Java
    Réponses: 1
    Dernier message: 10/12/2007, 15h55
  3. [Débutant] - VB6 - Gestion des impressions
    Par LSG-Serval dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 22/08/2006, 15h32

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