EXCEL - Astuce sur CCM interessante!

Ophelie75 Messages postés 265 Statut Membre -  
dandypunk Messages postés 838 Statut Membre -
Bonjour,

Il y a une astuce forte intéressante ici sur les commentaires :
http://www.commentcamarche.net/faq/sujet 8660 mettre en forme les commentaires excel

Il faut la lire pour comprendre ma requete...

Je me demande s'il est possible d'inserer un graphique dans le commentaire (puisqu'il disent qu'on peut y inserer une image)

Alors je me dis qu'une marco pourrait faire cela :

1.créer un graph sur une plage de données
2.le convertir en image
3. Inserer l'image dans le commentaire d'une cellule definie
4. Effacer le graphique original

Je pense que ce serait une TRES belle macro...mais je suis incapable de faire ça!

Si vous avez des idées...

57 réponses

Résumé de la discussion

Le problème posé est d’insérer un graphique Excel directement dans le commentaire d’une cellule et de pouvoir ensuite effacer le graphique source, idéalement via une macro. Les propositions convergent vers l’idée qu’insérer une image dans un commentaire est possible, par exemple en copiant le graphique sous forme d’image ou en l’enregistrant puis en l’insérant, tout en signalant qu’une solution qui lie dynamiquement les données reste difficile à mettre en œuvre. Des ressources et exemples de macros existent pour automatiser l’opération et pour convertir un graphe en image afin de l’insérer ensuite dans le commentaire. En pratique, les solutions se limitent à une image statique dans le commentaire, avec des limites évidentes pour la mise à jour automatique des données et une utilité parfois discutable selon le contexte.

Généré automatiquement par IA
sur la base des meilleures réponses
Ophelie75 Messages postés 265 Statut Membre 19
 
Salut dandypounk,

ma version est 2003.

Ophélie
0
dandypunk Messages postés 838 Statut Membre 83
 
OK qui peu le plus peut le moins.
Je travaille sous 2000.
Ce latin, en faisant des recherche sur l'aide en ligne, j'ai vu comment modifier les bulles d'aide.
Je ne garantis pas le résultat.
Laisse moi une petite semaine (04/08)

SGDG (Sans Garantie Du Gouvernement)

Dandypunk
0
Raymond PENTIER Messages postés 71871 Date d'inscription   Statut Contributeur Dernière intervention   17 402
 
Merci, Mike ! Merci, argixu !

Vos solutions (copier le graphe dans Paint ou PowerPoint et sauvegarder en format image) marchent toutes les deux.

Il faut juste penser, en terminant la sélection de l'image dans "Format de commentaire", à préciser "Verrouiller les proportions de l'image". Je n'ai pas réussi à voir quels avantages et inconvénients présentent les différents formats d'image PNG, GIF, JPEG ; en tout cas je ne suis jamais parvenu à faire en sorte que la taille de l'image et celle de la fenêtre de commentaire s'adaptent automatiquement (remplissage à 100%).

Et merci à Ophélie qui a posé le problème ...
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour tous,
La solution par macro proposée dans le lien donner par argixu me semble beaucoup plus intéressante, elle répond aux 5 critères emis par Ophélie .
Je crois qu'il y en a plus d'un qui a apris quelque chose aujourdhui, a commencer par moi.
Youpiiiiee, nous sommes plus malin qu'hier :D
A+
0
Utilisateur anonyme
 
Raymond,
C'est bizarre, mais dans le commentaire, en activant "verrouiller les proportions de l'image" à l'insertion, le graph est rogné et en désactivant l'option, il s'affiche entièrement.
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Bonjour Lermitte

Ok sorry for that...

Source : https://vb.developpez.com/

Ophélie
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Smart91 Messages postés 30146 Statut Contributeur sécurité 2 328
 
Moi je dis bravo à tout le monde, je viens d'apprendre quelque chose de super que je vais m'empresser d'utiliser
Je merci à tous car cela m'évite d'oublier quelq'un

Je pense qu'un des contrib devrait faire une astuce

Smart
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Pour continuer ce que je dit plus haut, ont ne peu faire des astuces avec des copier/coller venant d'un autre site, c'est contraire à la charte de CCM
Pour ceux que ca intêresse il n'ont que de mettre le raccourci dans leurs favoris.
A+
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Ok lermite encore une fois je suis désolée...
On ne m'y reprendra plus.

Ophélie
0
Smart91 Messages postés 30146 Statut Contributeur sécurité 2 328
 
Et même si on fait un lien vers la source en la citant ?

Smart
0
Ophelie75 Messages postés 265 Statut Membre 19
 
En gros il faut cacher le lien hypertexte?
0
Smart91 Messages postés 30146 Statut Contributeur sécurité 2 328
 
Non au contraire, je pense qu'il faut donner le lien, mais en précisant bien la source et l'auteur. Un peu comme pour les articles CCM:

Ce document intitulé « Algorithmique - Introduction » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Smart
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Tu n'a CERTAINEMENT PAS LU LE COPYRIGHT DE DEVELOPER.COM ??????????????
Les sources présentées sur cette page sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2008 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
A bon entendeur..
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Ok j'ai signalé le post en question pour les modérateurs l'enlève

Ophélie
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Sais pas si c'est de nouveau un bug mais mon 1er poste n'est pas passer..
Je ne crois pas que tu ai lu le copyright de Developez.com
Les sources présentées sur cette page sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2008 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
A bon entendeur...
0
Smart91 Messages postés 30146 Statut Contributeur sécurité 2 328
 
lermite22 a raison, on ne eut pas faire une astuse ce mais je ne suis pas sûr qu'il faille supprimmer le post.
Qu'en pensez-vous?

Smart
0
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Salut,

Ce code est génial, il faudrait l'améliorer de sorte que l'on ai pas à modifier le code macro chaque fois qu'un commentaire doit s'inscrire dans une cellule autre que A1.

ce que je cherche à faire, c'est d'inscrire par exemple en A1 la référence d'une cellule exemple F10 et que le commentaire s'inscrive automatiquement en F10.

Par le code Feuille pas de problème
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Range(Target.Value).Select
End If
End Sub

Reste à trouver le code pour l'insérer dans la macro. Si quelqu'un à la solution je suis preneur avant de me prendre la tête

A+
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Pas bien pigé ce que tu veux dire, mais a tout hasard, si tu copie une cellule avec commentaire, il est copier aussi !
0
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Salut mermite222,

Si l'on prend l'exemple du code macro précité dans cette discussion ou l’on veut insérer un commentaire différent avec ou sans image dans plusieurs cellules, qui ne sauraient pas défini au départ dans le code macro.

Il serait intéressant de saisir la référence d’une cellule exemple en A1 on saisirai P5 et le commentaire se créerait dans la cellule P5. si un autre commentaire devait être insérer dans une autre cellule il serait plus facile de saisir une référence dans la cellule que de modifier à chaque fois le code macro

A+
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour Mike,
Finalement j'avais bien compris ce que tu veux dire, mais je vois toujours pas la difficulté, si la macro fait référence à la cellule active plutôt qu'en A1 où subsite le problème ?
Ou bien je suis à côté de la plaque ?
A+
EDIT:
Dim GRA As Chart
Dim Cel As Range
    Set GRA = Worksheets("Feuil1").ChartObjects(1).Chart
    Set Cel = ActiveCell

En remplacant tout les A1 par cel et le Graphique par GRA, va mettre le commentaire dans le cellule active.
Restriction, ce doit être le premier graph de la feuille si l'ont veux que ce soit tout à fait automatique.
0
dandypunk Messages postés 838 Statut Membre 83
 
Voila un code qui tourne (enfin chez moi)
Sub CopierGraph()
    Dim sChemin As String
    Dim sNomGraphique As String
    Dim rPlageDeDonnees As Range
    Dim rCelluleACommenter As Range
    
    On Error GoTo SupprimerCommentaire
    'On crée une feuille qui servira à stocker le nom du dernier fichier
    
    If Worksheets(1).Name <> "DernierFichier" Then
        Worksheets(1).Select
        Sheets.Add
        Worksheets(1).Name = "DernierFichier"
        Sheets("DernierFichier").Select
        ActiveWindow.SelectedSheets.Visible = False
        Sheets("DernierFichier").Range("A1").Value = 1
    End If
    
    'Crée le fichier MonGraphx.BMP
    sChemin = ThisWorkbook.Path + "\MonGraph" & Sheets("DernierFichier").Range("A1").Value & ".GIF"
    
    'Selection des cellules
    Set rPlageDeDonnees = Application.InputBox("Saisissez la plage de données nécessaires au graphique", Type:=8)
    Set rCelluleACommenter = Application.InputBox("Indiquez la cellule à commenter", Type:=8)
        
    'On crée le graphique
    Charts.Add
    With ActiveChart
        sNomGraphique = .Name
            'Histogramme (Le type de graphique se trouve dans CharType)
            'On pourra ajouter un UserForm pour sélectionner le type de graphique
        .ChartType = xlColumnClustered
        .SetSourceData Source:=rPlageDeDonnees, PlotBy:=xlColumns
        'On exporte le graphique
        .Export Filename:=sChemin, Filtername:="GIF"
    End With
    
    
    'On supprime le graphique sans msg de confirmation
    Application.DisplayAlerts = False
    Sheets(sNomGraphique).Delete
    Application.DisplayAlerts = True
    
    'On ajoute le commentaire
    With Worksheets(rCelluleACommenter.Worksheet.Index).Range(rCelluleACommenter.Address)
        .AddComment "Le graphique correspondant à la plage est"
        .Comment.Shape.Height = 400
        .Comment.Shape.Width = 500
        .Comment.Shape.Fill.UserPicture (sChemin)
    End With
        
    If MsgBox("Voulez vous effacer le fichier image ?", vbYesNo + vbQuestion) = vbYes Then
        Kill sChemin
    Else
        Sheets("DernierFichier").Range("A1").Value = Sheets("DernierFichier").Range("A1").Value + 1
    End If
    
    Exit Sub

SupprimerCommentaire:
    If Err.Number = 1004 Then
        'On supprime le commentaire existant car AddComment a provoqué une erreur
       Worksheets(rCelluleACommenter.Worksheet.Index).Range(rCelluleACommenter.Address).Comment.Delete
       Resume
    End If
End Sub


Il suffit de l'enregistrer dans PERSO.XLS puis d'affecter la macro à un bouton de la barre de commande.
0
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Salut lermite222, et dandypunk


C'est tout à fait ça dandypunk reste à intégrer une userform pour le choix du graphique et la macro peut tourner quelque soit la plage d'entrée, la cellule de réception du commentaire

Merci et à plus
0
lermite222 Messages postés 9042 Statut Contributeur 1 191 > Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention  
 
Re tous,
Beh moi je trouve plus facile la solution dont je parle dans mon poste précédant, maintenant je l'ai tester (je ne mettrait pas la macro cf mes poste précédant),
sauf que la variable Graph existe déjà dans la macro.
1°) faut quand même créer le grah, alors créont-le sur la feuille.
2°) sélectionner la cellule où doit être le commentaire graph et Youp, c'est fait.
Plus simple... tu meur :D
A+
Edit: éventuellement je peu mettre le classeur sur Cjoint mais je crois pas que ce soit nécessaire.
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Bonjour tout le monde!

D'abord j'espère que lermite ne m'en veut plus pour la petit écart à la charte CCM et j'espère que vous allez bien...

Quelqu'un pourrait faire un petit topo de ce qui a été proposé, car je l'avoue franchement je n'y comprends plus rien!

Quid des étapes que je proposais dans mon post initial? (cf post n°1)

Merci à tous pour l'engouement (comme quoi l'dée de base interesse!) et bonne journée

Ophélie
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Rebonjour Ophelie, loin de moi de t'en vouloir, c'était juste mise au point et éviter les ennuis.
Concernant ta question et bien le lien que tu avait souligner est toujours d'actualité, et suite à la question de Mike, rendre cette macro automatique. En relisant les quelques postes précédant tu pourras suivre le développement.
Cordialement.
0
dandypunk Messages postés 838 Statut Membre 83
 
Je crois que mon post 50 répond au cahier des charges que tu proposais.
J'ai choisi de pouvoir conserver les fichiers images afin de pouvoir éventuellement les incorporer dans un fichier annexe.
Le problème est que le graphique de ton commentaire "n'évoluera" pas si tes données changent
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Super merci beaucoup je vais regarder la macro ce WE.

Je laisse le post en non résolu encore pour quelques jours...

bonne aprem!

Ophélie
0
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Salut mes amis,

Nous ne sommes jamais assez prudents et tout le mérite de quelques intervenants vigilants à veiller aux dérapages et aux respects des chartes comme l’a fait hermite222 en lisant la charte du Forum émetteur.
Comme tout artiste la connaissance et le savoir appartiennent à son auteur qui lui seul est libre de donner, vendre ou garder. Dans la lignée de ce post, la formule libre d’accès et de droits, est accessible par tous. Par contre il aurait été normal que l’on fasse référence à ce lien et non copier la formule dans un post sans Nommer son auteur
Nous le voyons tous chaque jour les règles élémentaires de savoir vivre se perdent et il est bon de temps à autre de faire des rappels à l’ordre.
Tout à sont honneur, Ophèlie75 à fait son mea culpa, ne s’est pas débinée, à reconnue son erreur et fait retirée le post en question.

Je pense avoir cerné les besoin d’Ophèlie75 en poussant à la modification du code et dandypunk presque entièrement automatisé en ajoutant des contrôles qui définissent la cellule de réception du commentaire et la plage du graphique. Je n’ai pas le temps de poursuivre cette discussion, aussi je lui laisse le choix de proposer une userform pour le choix du graphique.

Peut être un jour c’est enchainement de compétences sera sur dans les astuces des forums pour notre plus grand plaisir
A+
0
dandypunk Messages postés 838 Statut Membre 83
 
Le UserForm est en cours, j'essaye de l'alléger. Il devrait être en ligne lundi, comme annoncé dans mon post 28.
0
Ophelie75 Messages postés 265 Statut Membre 19
 
Bonsoir Dandy,

le resultat est vraiment spectaculaire, cela marche vraiment tres bien!!!

Est il possible de faire en sorte que l'opération se repete par exemple si je saisis la plage A3:F3 et afficher le commentaire en H3 que l'opération se repete en A4:F4 et le commentaire en H4 et ainsi de suite?
0