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
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
A voir également:
- Extraire commentaire excel
- Extraire une video youtube - Guide
- Liste déroulante excel - Guide
- Si et excel - Guide
- Extraire son video - Guide
- Aller à la ligne excel - Guide
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
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
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
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
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
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
Slt ERIC,
Merci pour ta réponse.
Saurais-tu me donner la marche à suivre pour effectuer cette macro ?
Merci
Merci pour ta réponse.
Saurais-tu me donner la marche à suivre pour effectuer cette macro ?
Merci
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
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()
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
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
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 !!
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 !!
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
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
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
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
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
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
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
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
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
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
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 :
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
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
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
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...)
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...)
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
17 nov. 2009 à 20:16
Bonsoir,
C'est vicieux ça.... Non je n'avais pas remarqué.
Voici un correctif :
CopierAvecCommentaire.xls
eric
C'est vicieux ça.... Non je n'avais pas remarqué.
Voici un correctif :
CopierAvecCommentaire.xls
eric
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
18 nov. 2009 à 00:02
essaie encore...
CopierAvecCommentaire.xls
CopierAvecCommentaire.xls
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
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
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
22 nov. 2009 à 17:41
Bonjour,
Pas sûr du résultat mais teste avec cette version modifiée :
CopierAvecCommentaire.xls
eric
Pas sûr du résultat mais teste avec cette version modifiée :
CopierAvecCommentaire.xls
eric
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.
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.
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
22 mars 2010 à 18:33
Bonjour,
Avec 9 en A1 :
=CopierAvecCommentaire(indirect("Sheet3!W" & A1))
devrait marcher.
eric
Avec 9 en A1 :
=CopierAvecCommentaire(indirect("Sheet3!W" & A1))
devrait marcher.
eric
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
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
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
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
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
Pour ma part toutes mes cellules de la base de donnée "feuille 2, 3 Etc" sont avec commentaire
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
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
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
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
4 nov. 2008 à 21:02
Bonsoir aline,
Testé et approuvé ;-)
Merci
eric
Testé et approuvé ;-)
Merci
eric
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
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
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
13 oct. 2009 à 10:41
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