bouton ouvrant graphique

Sarlone

XLDnaute Occasionnel
Bonjour

afin de compléter un programme que je tente de faire, j'aurais besoin de savoir comment effectuer l'action suivante:
j'ai des colonnes avec des nombres.
En bas de chaque colonne, je souhaite avoir un bouton qui fasse
apparaitre un graphique (dans une petite fenetre sous le tableau) créé à partir des valeurs de la colonne.(et un autre bouton pour fermer le graphique)

Je sais le faire en affichant de maniere permanente le graphique à coté du tableau , mais j'aimerais que le graphique ne se construise que si on demande à le visionner.

Faut-il une macro?

Je n'ai pas encore de fichier de pret car j'attends une éventuelle solution pour le construire.

Merci pour votre aide précieuse que j'ai déjà solicitée avec succès.

Cordialement
 

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

Merci CB60
si j'ai bien compris , meme si j'ai pas tout pigé dans la macro
2 questions:
1) Ne peut on pas affecter la numero de la colonne a une varaible dans la macro plutot qu'a une cellule?
2) la derniere colonne reste coloriée en violet meme apres disparition du
graphique.
Merci pour ton aide
Cordialement
 

CB60

XLDnaute Barbatruc
Re : bouton ouvrant graphique

re
Voici une macro qui ne passe pas par une cellule intermédiaire et qui enleve la couleur de la colonne si aucune entête n'est selectionné.

HTML:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Nomme la zone des entêtes
Sheets("feuil1").Range("A1", Sheets("feuil1").[IV1].End(xlToLeft)).Name = "Plage"
'Efface la couleur de la zone colchoix
Range("colchoix").Interior.ColorIndex = xlNone
'Si on selectionne une cellule de la zone plage
If Not Intersect(Target, Range("plage")) Is Nothing Then
'Test permet de recuperer la lettre de la colonne selectionné
test = Chr(64 + Target.Column)
'test1 permet de recuperer la derniere cellule de la colonne selectionné
test1 = Cells(65536, test).End(xlUp).Address
'Nomme la zone "colchoix" grace à test et test1
    Feuil1.Range(test & "2", test1).Name = "colchoix"
    ' Colore la zone colchoix
    Range("colchoix").Interior.ColorIndex = 6
    'Affiche le graphique
    ActiveSheet.ChartObjects(1).Visible = True
    'Change le titre du graphique en fonction de la cellule selectionné
With ActiveSheet.ChartObjects(1).Chart
    .HasTitle = True
    .ChartTitle.Text = Target.Value
End With
Else
   ' Masque le graphique si on se trouve en dehors de la zone Plage
    ActiveSheet.ChartObjects(1).Visible = False
End If
End Sub
 
Dernière édition:

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

CB60, j'aimerais adapté un petit qqch
tu remarqueras que je n'affiche plus les meme données
c normal
1) j'aimerais qu'en plus du graphique s'affiche en meme temps et a coté de celui ci tableau de N22:O4
2) pouvoir rajouter des colonnes similaires avec un bouton(macro) avant la colonne moyenne, et que tout continue a fonctionner en prenant en compte ces nouvelles colonnes
3) je peux aussi etre amené a rajouter des valeurs dans chacune desz colonnes

Puis je soliciter a nouveau ton aide;) merci
 

Pièces jointes

  • G 111-macro-3.zip
    11.7 KB · Affichages: 53
  • G 111-macro-3.zip
    11.7 KB · Affichages: 37
  • G 111-macro-3.zip
    11.7 KB · Affichages: 59

CB60

XLDnaute Barbatruc
Re : bouton ouvrant graphique

Bonjour
Voici ton fichier avec ce que j'ai compris???
Un double click sur une cellule de la zone plage insert une colonne entiere.
 

Pièces jointes

  • G 111-macro-3.zip
    11.2 KB · Affichages: 57
  • G 111-macro-3.zip
    11.2 KB · Affichages: 48
  • G 111-macro-3.zip
    11.2 KB · Affichages: 58

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

recoucou
merci cb60
ca semble bien toutefois j'ai l'impression que qd on double clique qqpart sur la plage
la colonne se crée avant la case ce qui finalement est mieux,
mais qu'on ne peut plus creer de nouvelles colonnes apres la position de la colonne ainsi créée.
De plus l'apparition du graphique ne marche plus systématiquement comme ce que tu avais realisé avant aprèsz que j'ai créé des colonnes (vides).
Je n'arrive pas a trouver pourquoi car je comprends mal ces lignes:

Sheets("feuil1").Range("A1", Sheets("feuil1").[IV1].End(xlToLeft)).Name = "Plage"
(meme si elle semble ne plus servir, comment est definie : [IV1] ???


Range("A1").CurrentRegion.Resize(1, Range("A1").CurrentRegion.Columns.Count).Name = "Plage"

Voila merci pour tes eclaircissements et ta patience:)
Cordialement
 

CB60

XLDnaute Barbatruc
Re : bouton ouvrant graphique

Re
Il te suffit de mettre une valeur en ligne 1 de la colonne qui vient d'etre ajouté.
Ou alors dans cette macro:
HTML:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Range("A1").CurrentRegion.Resize(1, Range("A1").CurrentRegion.Columns.Count).Name = "Plage"
If Not Intersect([Plage], Target) Is Nothing Then ActiveCell.EntireColumn.Insert Shift:=xlToRight
Cancel = True
End Sub
Ajoute cela:
ActiveCell.Value = "A"
juste au dessus de cancel
 

Pièces jointes

  • G 111-macro-3.zip
    13.3 KB · Affichages: 30
  • G 111-macro-3.zip
    13.3 KB · Affichages: 29
  • G 111-macro-3.zip
    13.3 KB · Affichages: 27
Dernière édition:

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

Salut
merci CB60 ca marche tres bien
Question 1:
j'ai rajouté le fait de redoublecliquer sur une colone crée que je veux finalement effacer
peux tu me coriger si nécessaire?
voici le code:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Range("A1").CurrentRegion.Resize(1, Range("A1").CurrentRegion.Columns.Count).Name = "Plage"
If Not Intersect([Plage], Target) Is Nothing Then
If ActiveCell.Value = "?" Then
ActiveCell.EntireColumn.Delete Shift:=xlToLeft
Else: ActiveCell.EntireColumn.Insert Shift:=xlToRight
ActiveCell.Value = "?"
Cancel = True
End If
End If

End Sub


Question 2:
je souhaite egalement qu'apparaisse dans le meme graphique un tableau ou figure Q1:R9 (qui disparait donc aussi comme le graphique) , comment puis je faire?

Question 3:
tu n'utilises plus la commande
Sheets("feuil1").Range("A1", Sheets("feuil1").[IV1].End(xlToLeft)).Name = "Plage"
mais comment definissais tu la valeur de ").[IV1].???

Et derniere question
quelle est l'ecriture a donner pour effacer une colonne que si elle est vide ( a part son titre) moi je l'ai fait si son nom est "?"

Merci pour ton aide qui me permet de bien avancer
Cordialement
 

CB60

XLDnaute Barbatruc
Re : bouton ouvrant graphique

RE
Nous sommes loin de la demande de départ.
Beaucoup de changement, pour réaliser ce que tu souhaite.


Edit changement du fichier, remplacer texbox par label ( plus propre!!!)
 

Pièces jointes

  • G 111-macro-3.zip
    17.4 KB · Affichages: 33
  • G 111-macro-3.zip
    17.4 KB · Affichages: 31
  • G 111-macro-3.zip
    17.4 KB · Affichages: 37
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : bouton ouvrant graphique

Re à tous,

avec une petite modif sur le dernier fichier posté par CB60
pour ne plus faire apparaître le label ainsi que les données se trouvantsur le graphe ( image1)

à+
Philippe
 

Pièces jointes

  • 111.zip
    18 KB · Affichages: 47
  • 111.zip
    18 KB · Affichages: 50
  • 111.zip
    18 KB · Affichages: 49

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

Merci beaucoup CB60 et PhLaurent55
J'ai des petites choses a vous demander :) car bien qu'ayant cherché longuement hier soir pendant 5 heures, j'ai pas trouvé:
1) image1 et group36 comment on les affecte comment on les modifie? je trouve pas
2) En fait mes colonnes ne porteront pas ces titres (col A ...., etc) et commenceront de U7 à ....Z7 ou plus.
j'ai essayé de transposer la macro sur une feuille vierge, ca marche ("plage" a bien comme affectation $U$7:$Z$7) , mais qd je transpose cette macro sur ma feuille definitive, "plage" se 'reinitialisa systématiquement à $A$1:$Z$1
Est-ce une erreur 'classique'?
Y a t il depister le moment ou plage prend cette affectation?
Là je sèche complètement
Ps( PhLaurent, tu as deja bossé sur une prtie de mon prog : gestion des absences en juillet et la procedure double clique gerera suivant la plage de selection , les absences ou les données des colonnes dont je parle ;) )
Merci pour votre aide précieuse
Cordialement
 

Sarlone

XLDnaute Occasionnel
Re : bouton ouvrant graphique

re bonjour a tous
nouvel appel a vous
je ch donc a adapter la macro faite dans ebauche dans mon fichier final mais je n'arrive pas a reproduire le lien entre la colonne colchoix et le graphique (dans le fichier final) comment fait on ?
(je ne vois pas par ex comment nomme t on les graphique (group 36 etc)
merci
Cordialement
 

Pièces jointes

  • ebauche.zip
    22.9 KB · Affichages: 34
  • fichier final.zip
    21.6 KB · Affichages: 41
  • ebauche.zip
    22.9 KB · Affichages: 28
  • fichier final.zip
    21.6 KB · Affichages: 41
  • ebauche.zip
    22.9 KB · Affichages: 31
  • fichier final.zip
    21.6 KB · Affichages: 37

Statistiques des forums

Discussions
312 677
Messages
2 090 821
Membres
104 677
dernier inscrit
soufiane12