Excel rechV valeur+commentaire

Résolu/Fermé
titi42 - 1 févr. 2008 à 16:09
jean-pierre34 Messages postés 21 Date d'inscription mercredi 26 décembre 2012 Statut Membre Dernière intervention 17 mars 2017 - 7 mars 2017 à 12:57
Bonjour,
Lorsque je fais une formule rechercheV, je récupère le contenu de la cellule sans son commentaire.
Existe-il une formule/matrice (je ne sais pas faire les matrices) me permettant de récupérer la cellule avec son commentaire?
J'utilise Excel 2007.
Merci pour votre aide.
A voir également:

18 réponses

eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
1 juin 2009 à 21:46
Bonsoir novicelive,

Tiens, j'avais oublié que j'avais fait ça moi... Ca fait plaisir de voir que ça interesse encore du monde :-)

Voici une nouvelle version complétée et qui marche donc qu'il y ait ou non un commentaire sur la cellule source.

Fonction personnalisée copiant la valeur d'une cellule et son commentaire :
CopierAvecCommentaire.xls
N'est pas récupéré : la mise en forme du commentaire (police, taille et attributs police, couleurs,...).

eric
1
merci eric, je suis moi aussi à la recherche d'une formule pour copier une cellule avec le commentaire, et ta formule fonctionne bien mais comme le dit "novicelive" (Un petit hic quand même quand la cellule source n'a plus de commentaires l'ancien est toujours présent et n'est pas effacé dans la cellule destination.)
Est ce que tu aurais une solution????
novicelive dit qu'il faut rajouter ".ClearComments" au code après la seconde ligne l'instruction, mais ".ClearComments" y est déjà et celà n'efface pas l'ancien commentaire.

merci
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
1 févr. 2008 à 18:43
Bonjour,

Recherchev() ne te ramène que le contenu de la cellule effectivement.
Un copier/coller ou couper/coller t'emmene le commentaire mais aucune formule (à ma connaissance) ne te permet de le faire.
Il faut une macro en vba

eric
0
Slt ERIC,
Merci pour ta réponse.
Saurais-tu me donner la marche à suivre pour effectuer cette macro ?
Merci
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
2 févr. 2008 à 18:19
Bonjour,

Je t'ai fait une fonction personnalisée qui demande en paramètre une référence de cellule et qui retourne la valeur de la cellule et ajoute le commentaire.
Les dimensions du commentaire sont celles du commentaire source, ainsi que sa 'visibilité'. Si tu préféfères qu'il soit toujours masqué par défaut tu peux remplacer la ligne concernée par Range(AdrAppelFn).Comment.Visible = false
Bien sûr il va falloir revoir le fonctionnement de ta formule de façon à récupérer la référence de la cellule recherchée au lieu de son contenu. Donc utiliser des combinaisons equiv() et index() à la place de recherchev()
Function CopierAvecCommentaire(Source As Range)
    Application.Volatile
    AdrAppelFn = Range(Parent.Caller.Address(RowAbsolute:=False, columnAbsolute:=False))
    Range(AdrAppelFn).ClearComments
    Range(AdrAppelFn).AddComment
    Range(AdrAppelFn).Comment.Text Text:=Source.Comment.Text
    Range(AdrAppelFn).Comment.Shape.Height = Source.Comment.Shape.Height
    Range(AdrAppelFn).Comment.Shape.Width = Source.Comment.Shape.Width
    Range(AdrAppelFn).Comment.Visible = Source.Comment.Visible
    CopierAvecCommentaire = Source.Value
End Function

Cette fonction est à coller dans un module et non dans la feuille.
Si le commentaire source est modifié il faut qu'il y ait un recalcul de la feuille pour que la copie soit mise à jour. Soit une cellule qui est modifiée, soit faire F9 pour forcer.
A ta disposition si tu as besoin de plus d'explication
eric
0

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

Posez votre question
Salut,
Bon ça fait un moment que j'essaie mais je n'arrive pas à mettre ta solution en place...

Je vais essayer d'être synthétique :

1/ Copier/coller la "Function" dans le module c'est OK (c'est dans MS Virtual Basic n'est-ce pas?)

2/ Pour ce qui est des autres aspects "masquage" et recalcul", c'est OK aussi

3/ Je bloque quand tu dis "Bien sûr il va falloir revoir le fonctionnement de ta formule de façon à récupérer la référence de la cellule recherchée au lieu de son contenu. Donc utiliser des combinaisons equiv() et index() à la place de recherchev()".
En fait je ne vois pas exactement ce qu'il faut faire et je ne connais pas du tout les fonctions index et equiv...

>> Pourrais tu me donner un exemple de la formule finale qu'il faut taper si je souhaite avoir le résultat que je recherche en A1 par ex?

Encore merci pour ton aide !!
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
5 févr. 2008 à 19:26
Bonsoir,

Effectivement j'ai des difficultés à la mettre en oeuvre aussi. Je ne récupère pas la cellule d'appel de la fonction alors que ça réagissait bien lors des tests...
Je cherche pourquoi ce soir ou demain et je te recontacte
eric
0
novicelive Messages postés 2 Date d'inscription lundi 1 juin 2009 Statut Membre Dernière intervention 1 juin 2009
1 juin 2009 à 22:05
Bonjour,

L'intéret na pas de limite de temps, les bonnes choses ne se perdent jamais.

Merci de cette réponse rapide, je me suis empressé de tester.
Un petit hic quand même quand la cellule source n'a plus de commentaires l'ancien est toujours présent et n'est pas effacé dans la cellule destination.

Il faut rajouter au code après la seconde ligne l'instruction ".ClearComments" pour effacer les précédants commentaires.

Cordialement
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
1 juin 2009 à 22:42
J'y avais songé mais je me suis dit justement l'inverse, si on a un commentaire dans la cellule de destination est-ce interessant de le perdre car il n'y en a pas dans la cellule source.
Je vais laisser mûrir pour l'instant, ou peut-être une variable optionnelle....
Tu as pu adapter à tes besoins c'est l'essentiel.
eric
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
13 oct. 2009 à 18:58
Bonjour JF24,

Si tu veux que la suppression d'un commentaire suive dans la cellule ayant la fonction personnalisée inverse les lignes if... et celle avec le .clearcomments pour obtenir :
    Range(AdrAppelFn).ClearComments
    If Not Source.Comment Is Nothing Then


Ensuite, comme la fonction est volatile, n'importe quel saisie dans une cellule ou même un suppr dans une cellule vide forcera la mise à jour de tous les commentaires.

eric
0
Merci beaucoup eriic ça fonctionne!, si un jour, tu as une solution pour une actualisation automatique, fait moi signe!

merci encore

JF
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
13 oct. 2009 à 20:41
hummmm, n'espère pas trop ;-)
Si c'était toujours les même cellules en cause ça pourrait être fait en macro mais tu perds la souplesse d'une fonction personnalisée.
Et en restant fonction personnalisée ça nécessiterait une gestion beaucoup trop lourde en vba pour que ce soit interessant (plusieurs heures de boulot pour éviter un suppr ou une simple saisie qui remet tout à jour...)
0
ok, de toute façon, ça me suffit largement!

merci beaucoup

JF
0
As tu remarqué Eriiic, que quand on fait F9 (actualisé), les commentaires se copie sur les autres feuilles (feuil2, feuil3 ect...)
est ce que tu aurais une solution?

merci

JF24
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
17 nov. 2009 à 20:16
Bonsoir,

C'est vicieux ça.... Non je n'avais pas remarqué.
Voici un correctif :
CopierAvecCommentaire.xls

eric
0
Re bonsoir Eriiic

ça marche, mais le problème maintenant, si je fais cette formule sur la feuil1:

=CopierAvecCommentaire(Feuil2!C6) ça ne marche pas

Désolé

Aurais tu une solution?

Merci
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
18 nov. 2009 à 00:02
essaie encore...
CopierAvecCommentaire.xls
0
Bonjour,
Merci beaucoup Eriiic ça marche!

merci
JF24
0
Bonjour, Eriic,
Désolé, j'ai encore un petit souci.
La formule fonctionne parfaitement, mais les commentaires des autres feuilles disparaisses ex...

sur la feuil1 exemple: cellule A17 je mets 12 avec un commentaire
sur la feuil2: je mets dans une cellule exemple C1 =CopierAvecCommentaire(A17) cela fonctionne parfaitement, mais le problème c'est que sur la feuil3, si en C1 j'ai déjà un commentaire ou que j'en rajoute un, il disparait ainsi que sur la feuil4 ect....

Aurais tu un solution?

merci encore

JF
0
J'ai oublié de te dire que j'ai rajouté :Range(AdrAppelFn).ClearComments
dessous:AdrAppelFn = Parent.Caller.Address()
pour que le commentaire disparaisse, quand la cellule original n'a plus de commentaire.

merci

JF24
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
22 nov. 2009 à 17:41
Bonjour,

Pas sûr du résultat mais teste avec cette version modifiée :
CopierAvecCommentaire.xls

eric
0
Merci beaucoup Eriic, ça marche!

JF24
0
Bonjour, Merci bien pour vos réponses, ça m'a beaucoup aidé. Cependant, j'ai un petit problème pour aller récupérer une info dans une autre feuille.

Avec cette commande, je récupère bien ce que je j'ai en W9 de 3ème feuille:

=CopierAvecCommentaire(Sheet3!W9)

Comment faire pour remplacer le "9" par des coordonnés sur la feuille 1?
Ça doit être un truc du style:

=CopierAvecCommentaire(Sheet3!W(Sheet1!E14))

Voyez vous ce que je veut dire?
Merci d'avance pour vos réponses.
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
22 mars 2010 à 18:33
Bonjour,

Avec 9 en A1 :
=CopierAvecCommentaire(indirect("Sheet3!W" & A1))
devrait marcher.
eric
0
Merci bien, c'est nickel!
Bonne journée.
0
jean-pierre34 Messages postés 21 Date d'inscription mercredi 26 décembre 2012 Statut Membre Dernière intervention 17 mars 2017 1
6 mars 2017 à 21:12
Bonjour,

Je relance le sujet car les liens sont inactifs et je ne suis par un pro d'Excel.

Pour ma part je désire que le commentaire (voir la mise en forme) de la cellule source feuille 2 apparaisse dans ma cellule en rechercheV de la feuille 1

Merci d'avance.

Jean-Pierre
0
jean-pierre34 Messages postés 21 Date d'inscription mercredi 26 décembre 2012 Statut Membre Dernière intervention 17 mars 2017 1
7 mars 2017 à 12:57
Merci Eric mais le lien est toujours inactif.
Pour ma part toutes mes cellules de la base de donnée "feuille 2, 3 Etc" sont avec commentaire
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244
6 févr. 2008 à 21:59
Bonsoir,

Voici un fichier exemple
http://www.cijoint.fr/cj200802/cij9647554393600.xls

Cependant il reste un pb auquel je n'avais pas pensé c'est si la cellule à copier n'a pas de commentaire.
Pour l'instant je butte sur un pb à-priori simple : comment détecter qu'une cellule n'a pas de commentaire... :-s
Si toutes tes cellules en ont un tu peux y aller.

eric
-1
Eric il te suffit de tester :

If Not CelluleMonProduit.Offset(0, i).Comment Is Nothing Then ...

Aline
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 244 > Aline
4 nov. 2008 à 21:02
Bonsoir aline,

Testé et approuvé ;-)
Merci
eric
0
novicelive Messages postés 2 Date d'inscription lundi 1 juin 2009 Statut Membre Dernière intervention 1 juin 2009 > eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024
1 juin 2009 à 20:49
Bonjour,
J'ai suivi ce post avec interet il semble correspondre à ce que je souhaite réaliser mais effectivement en l'absence de commentaire comment avez vous résolue ce PB?
Avez vous le petit bou de code complémentaire peut être?
Celui ci copie t il le contenu de la cellule sans le commentaire, ou ce commentaire est supposé absent de la cellule source.
Cordialement
0