Commentaire dans cellule excel

cedvip -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, bon mon titre pas terrible mais j'avais pas assé de place pour dévelloper. Je sais commen metre un commentaire dans une cellule. Il suffit de le tapper manuellement. En fait j'aimerai que l'orsque je positionne ma sourie sur la cellule, afficher des informations qui proviennent d'une autre feuille du meme fichier, ou voir meme d'un autre fichier(soyon fou). Est ce que cela est possible ou bien je plane complètement.
je travaille sur exel 97/2003.

8 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonsoir,
dans la feuil1
essaies ce bout de code qui renvoie la valeur de B2 dans la feuil2:

With Selection
formule = CStr(Sheets(2).Range("B2"))
.AddComment
.Comment.Text Text:=formule
End With

pour le fichier extérieur, j'vas regarder.

Michel

edit:

et voila la bête (les 2 classeurs dans m^me répertoire, le classeur "essai2" étant ouvert):

With Selection
formule = CStr(Workbooks("essai2.xls").Sheets(1).Range("C2"))
.AddComment
.Comment.Text Text:=formule
End With

a adapter à tes besoins (procédure paramêtrée?, cas ou il existe déjà un commentaire?...)
0
cedvip
 
merci pour ta reponse mais je ne doit pas utiliser la formule de la bonne facon, ca me donne une erreur sur "range"
Commen doit je l'utiliser cette formule ?
je copie tout tel quel dans la celule
"With Selection
formule = CStr(Sheets(2).Range("B2"))
.AddComment
.Comment.Text Text:=formule
End With " ???
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
C'est du VBA !!!...

il faut inclure ces instructions dans une procédure comme je te l'indique...

Si tu ne connais pas ne serait-ce que les macros fonctions (rassure toi, on vit très bien sans!)tu vas avoir du mal !
Comme tu a posté dans le forum "programmation", j'ai cru que tu connaissais VBA....

Si j'ai le temps demain, j'essaierai, ou qqn d'autres sur le forum, de te pondre un truc.

Michel
0
cedvip
 
heu.. je suis pas un as de la progamation, mais j'ai quelque notions de macro quan meme. lol dison que sais faire des macros en utilisant l'assistant, je suis un petit débutant de macros. donc je vais essayer comme ca, mais une macros doit etre lancée pour fonctionnée? c'est pas comme une celulle qui contien une formule? si peut etre lol
merci en tout cas je vais tester
0

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

Posez votre question
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
OK, fais des essais et dis-moi.

Michel
0
cedvip
 
ok ca marche c'est nickel. merci mais maintenant j'ai un autre probleme. en fait j'aimerai utilser cete macro mais pour quelle affiche un resultat par rapport au nom qui correspond. je vais essayer d'expliquer.
j'ai 2 feuilles, sur la premiere j'ai une colone qui contien des nom de client, et il y a des chifrre dans d'autre colone qui corespondent a ca commande.
ex: client commande bon nulll reste
dupond 30 20 5 5

et j'aimerai que ca apparaisse dans le commentaire, soit juste les chifre 30; 20; 5; 5
soit carrement commande: 30; bon:20; null:5; reste:5
je sais pas si on peut faire ca.
sur la deuxieme feuile j'uttilise une formule "index, equiv" pour recuperer les donnée de la feuille 1. alors je me demande si c'est possible de metre cette formule dans la macro, comme ca le commentaire qui s'affichera sera en re la tion avec les résultat de la feuille1 qui sont en relation avec le nom dema celule en feuille2. OU alors le language vba ne peut pas etre mélanger au formulexcel, je sais pas. je débute.
si quelqu'un a une idée
0
cedvip
 
je vien d'éssayer ca ma ca marche pas lol

Sub com()
With Selection
formule =INDEX(Feuil1!B:B;EQUIV($A2;Feuil1!A:A;0);1)
.AddComment
.Comment.Text Text:=formule
End With

End Sub
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Tu peux toujours utiliser les fonctions excel mais en anglais (sans garantie: INDEX change pas et EQUIV se dit Match jle crois) les séparateurs sont des virgules et non des points virgules; les cellules sont désignées par range("A2").La ligne doit commencer par Application.worksheetfunction (worksheetfunction est facultatif)
par exemple
resultat= Application.worksheetfunction.index(range("B1:B8"), match(tavar,range("E1:E8"),0))

Mais il serait plus intéressant d'utiliser "find"

lig=range("E1:E8").find(mtavar).rox donne la ligne où se trouve tavar

resultat=cells(lig,2) donne la valeur cherchée

dans ton commentaire, pour allar à la ligne

formule= resultat & (chr10) & autrerésultat

Michel
0