Impression conditionnel de graphique sous excel

incubus20851

XLDnaute Occasionnel
C'est mon premier post ici, donc Bonjour à tout le monde !!

J'vais essayer d'etre clair..

J'ai un tableau de synthèse qui récapitule le chiffre d'affaires de Clients par produits, de ce tableau, est généré automatiquement des graphiques à la file en dessous du tableau de synthèse. Il me faudrait un bouton d'impression avec une macro par exemple qui imprime les graphiques des produits qui ne sont pas à 0. Donc qui ont du chiffre d'affaires. c'est pour éviter d'imprimer des graphiques vierge à chaque fois.

Quelle pourrait être la solution??

J'vous remercie d'avance pour votre réponse
A bientôt
Incubus20851
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

Bonjour Incubus et bienvenu sur Le Forum.:)

Pour t'aider, pourrais-tu nous donner une fichier <50ko avec un ou deux graphiques et sans données confidentielle pour mieux comprendre ton attente.

A bientôt
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

re bonjour,

si tu veux bien patienter, je m'occupe de ce problème cet après-midi,

A moins que d'ici là un autre XLDIEN ne te propose une solution

A tou à l'heure
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

Re bonjour Incubus,

Ca a été long mais voici qui peut convenir

dans le fichier joint il y a un bouton qui imprime uniquement les graphiques dont toutes les valeurs sont à zéro

Pour tes tests j'ai mis uniquement un apreçu avant impression.

Pour qu'il imprime directement sans aperçu, remplacer la ligne en base de macro:
Code:
Feuil1.PrintPreview
Par
Code:
Feuil1.PrintOut

En te remerciant de ta patiente,
A bientôt
 

incubus20851

XLDnaute Occasionnel
Re : Impression conditionnel de graphique sous excel

Rebonjour,

J'te remercie beaucoup, c'est exactement ce qu'il me fallait.

Par contre, surement une question bête mais comment j'peux importer la macro dans mon autre fichier ??

Je sais pas comment transférer le bouton du fichier exemple2.xls à mon fichier !

Merci en tout cas,
Incubus20851
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

re, re, re, re,re:)

Pour ce qui est de copier/coller la macro je te laisse faire.

quant au bouton, il faut en créer un identique dans ton nouveau fichier (Affichage/ Barre d'outils/boîte à outils controles)

Lorsque que la barre d'outils est affichée tu cliques sur le bouton carré gris en dessous d'une case à cocher. Puis tu dessines sur ta feuille le bouton.
ensuite tu clique dans la barre d'outils sur le bouton représentant une feuille montrée du doigt. la fenêtre des propriétés s'affiche. Dans la liste des propriétés à la ligne 'Caption', tu cliques dans la case adjacente(à droite) et tu mets le texte "Imprimer les graphiques".

Une fois cela effectué tu fais un clic-droit sur le bouton que tu viens de créer et tu choisis 'Visualiser le code'.

Dans la fenêtre qui s'ouvre tu verras dans la partie droite un texte comme ceci:

Code:
Private Sub CommandButton1_Click()
    
End Sub

A l'interieur tu mets la ligne:

Code:
ImprimerGraphiques

Pour que cela ressemble à:

Code:
Private Sub CommandButton1_Click()
    ImprimerGraphiques
End Sub

Puis tu fermes la fenêtre et revient sur ta feuille.

Dans la barre d'outils controles, il y a une equerre avec un crayon et une règle, si ce bouton est sélection (Bleu) tu clique dessus et ton bouton deviendra actif.

Et voilà Cela à l'air compliqué mais tu t'en sortira j'en suis sûr.

Une précision toutefois si tes graphiques ne sont pas sur Feuil1 alors il faudra changer dans la macro toutes les références à Feuil1 par le nom de ta feuille.

A bientôt
 

incubus20851

XLDnaute Occasionnel
Re : Impression conditionnel de graphique sous excel

Ok merci beaucoup,

Par contre j'avais mis des sauts de pages entre mes graphiques, et quand j'appuie sur le bouton imprimer les graphiques, à l'aperçu tout mes graphiques sont coupés et ça m'enleve ma mise en forme à chaque fois.

Que puis-je faire ??
Est-ce qu'il y a une solution pour que mes graphiques soit en bonne position et à raison de 1 graphique par page !!

Merci encore
Incubus
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

bonjour incubus,

La macro prévoit d'imprimer un graphique par page avec ses données

Il te faut enlever les sauts de page que tu as positionnés sur ta feuille.

a bientôt
 

incubus20851

XLDnaute Occasionnel
Re : Impression conditionnel de graphique sous excel

Ok j'vois,

En fait j'avais oublié de mettre centrer verticalement dans la mise en page.:D

Par contre ce que j'ai oublié de dire, c'est que au dessus de chaque graphique y'a 3 lignes excel avec l'adresse du client et le nom du vendeur.

Et que j'ai des boutons dans le tableaux de Delta pour imprimer le graphique pour 1 ligne de produit à la fois. J'avais fait un bouton en faisant une macro d'impression de la page 4, une autre macro pour la page 5 etc...
Du coup maintenant ils sont sans effet....

J'sais je suis un peu embetant, désolé
Merci
Incubus
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

Re, Incubus

Pour ce qui est des 3 lignes avant les données de chaque tableau, cette nouvelle version de la macro les prendra en compte. C'est pour ce genre de problème que nous demandons d'être précis.

Code:
Sub ImprimerGraphiques()
    Dim nbCharts As Integer, i As Integer, j As Integer, k As Integer
    Dim Valeurs As Variant
    Dim somme
    Dim oChart
    Dim oSerie
    Dim Adr

    nbCharts = Feuil1.ChartObjects.Count
    i = 0
    For i = 1 To nbCharts
        somme = 0
        Set oChart = Feuil1.ChartObjects(i).Chart
        j = 0
        If oChart.SeriesCollection.Count > 0 Then
            For j = 1 To oChart.SeriesCollection.Count
                On Error GoTo FinBoucle
                If IsArray(oChart.SeriesCollection(j).Values) Then
                    Valeurs = oChart.SeriesCollection(j).Values
                    'fait la somme contenue dans les graphique
                    For k = LBound(Valeurs) To UBound(Valeurs)
                        somme = somme + Valeurs(k)
                    Next k
                End If
FinBoucle:
            Next j
        End If
        
        If somme > 0 Then
            Adr = oChart.SeriesCollection(1).Formula
            Adr = Left(Adr, InStr(Adr, ",") - 1)
            Adr = Mid(Adr, InStr(Adr, "!") + 1)
            Feuil1.PageSetup.PrintArea = _
            Range("A" & Range(Adr).CurrentRegion.Cells(1, 1).Offset(-3).Row, Feuil1.ChartObjects(i).BottomRightCell).Address
            Feuil1.PrintPreview
        End If

    Next i


End Sub

quant à:
Et que j'ai des boutons dans le tableaux de Delta pour imprimer le graphique pour 1 ligne de produit à la fois. J'avais fait un bouton en faisant une macro d'impression de la page 4, une autre macro pour la page 5 etc...
Du coup maintenant ils sont sans effet....
Je n'ai aucun moyen de savoir de quoi tu parles:cool:
A bientôt donc
 

incubus20851

XLDnaute Occasionnel
Re : Impression conditionnel de graphique sous excel

Re, re, bonjour, saloute, re,re

Merci pour le code, par contre il a pas marché, j'ai du faire un truc de travers, donc j'verrais un peu plus tard. C'est vrai que dans ma dernière explication c'est pas clair, et j'men excuse.

J'ai un nouveau problème :
Tout mes graphiques sont générés automatiquement par rapport au numéro de Client qui est inséré en A2 et qui va chercher en RECHERCHEV les chiffres d'affaires dans des onglets de Produits.

J'aurai besoin d'insérer une liste de clients verticalement en A2.
Avec des boutons, visualiser le client suivant, client précédent, imprimer le graph client en cours, imprimer la liste restante. Donc des boutons de naviguation en somme pour faire bouger ma séléction de client

J'envoi un exemple de fichier, ca sera bien plus clair je pense...
Y'a t-il une solution ?

Merci
Incubus
 

Pièces jointes

  • exemple3.xls
    33 KB · Affichages: 66
  • exemple3.xls
    33 KB · Affichages: 54
  • exemple3.xls
    33 KB · Affichages: 61
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

Bonjour Incubus,

Il faudrait un peu plus de rigueur dans la présentation des données et l'expression de ce que tu désires.

Exemples: en feul1 tu as un graphes avec des données issues de la feuille importation, dont la mise en forme et le titre des colonnes est totalement différent de celles de la feuille Produit1.
A partir de quoi faut -il que je me base?
Quelles colonnes de produit1 doivent-être représentées dans le graph de feuil1

Que veut dire:
Bouton de navigation pour faire monter ou descendre la liste de codes client
?
Etc.. et j'en passe...

Nous ne pouvons pas ici faire le minimum de travail à ta place. Sinon, nous allons continuer comme les jours précédents à tâtonner pour un résultat médiocre qui ne correspondra à rien.:cool:

A bientôt.
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

bonsoir Incubus,

voici, j'ai progressé mais il reste une question.
La liste des codes clients doit-elle correspondre à la liste de tous les clients pour tous les produits ou seulement au client pour un produit.

regarde la feuille importation pour voir les formules qui conditionne le graphique. Des données différents selon les mois auraient faciliter la recherche d'erreurs éventuelles.

Passe un bonne soirée, nous verrons demain à moins qu'un autre forumeur se sente de continuer.
 
G

Guest

Guest
Re : Impression conditionnel de graphique sous excel

bonjour Incubus,

Voici un fichier plus aboutit que celui d'hier qui permet d'éditer les graphiques des codes clients en fonction des produits.

Regarde les différentes annotations et dis-moi si c'est ce que tu attends.

Pour ce qui est du bouton 'Imprimer le reste de la liste' je ne vois pas bien son rôle. toutefois regarde en bas de la feuil1, un tableau s'alimentera automatique lorsqu'un graphique sera imprimer. Il suffira d'imprimer ce tableau pour savoir quel graphique (Produits/client) à été imprimer ou pas.

A bientôt
 

Discussions similaires

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed