Bonjour Bernard,

Bernard Marcelly a écrit :
Bonsoir Francois Gatto
Message du 2006-04-23 19:59:

J'ai fait quelques tests sur les fonds de notes.
La réalisation présentée ci-après permet de conserver la colorisation, mais après réouverture un élément parasite (Ancre) s'affiche.


Si j'exécute ton codage j'obtiens (sous Win XP) une anomalie un peu différente: au rechargement du document modifié, je vois un double de la note qui s'étale sur les cellules A1:E1

Je me suis mal exprimé, mais c'est bien de cela qu'il s'agit.


En faisant un codage plus simple que le tien, j'ai toutefois un résultat parfait, même après rechargement du document:

Dim monDocument As Object, lesFeuilles As Object
Dim maFeuille As Object, maCellule
Dim lesNotes As Object
Dim laNote As Object, formeNote As Object
monDocument = thisComponent
lesFeuilles = monDocument.Sheets
maFeuille = lesFeuilles.getByName("Feuille1")
maCellule = maFeuille.getCellRangeByName("G8")
maCellule.String = "La cellule comporte une note"
lesNotes = maFeuille.Annotations
lesNotes.insertNew(maCellule.CellAddress, "dimanche en couleur")
laNote = maCellule.Annotation
formeNote = laNote.AnnotationShape
formeNote.FillStyle = 1
formeNote.FillColor = 253672

Une différence *apparemment* mineure est que je n'appelle pas de sous-programme.

Effectivement ;)

Mais si je reprends les 4 dernières lignes pour en faire
un sous-programme ModifAnnotation(uneCellule as object) alors patatra !
Au rechargement du document modifié, je retrouve l'anomalie décrite plus haut.

Pire, c'est un problème de transmission d'argument. J'ai écrit ce sous-programme:

sub modifier(c as Object)

end sub

Il ne fait rien! Maintenant j'ajoute ceci dans mon programme principal:

modifier(maCellule)
laNote = maCellule.Annotation ' le reste du codage n'est pas modifié

Cela suffit à déclencher l'anomalie! L'objet maCellule est anormal, parce que si je transmets maFeuille, plus d'anomalie.

Donc c'est un bogue !
Un bogue de l'object maCellule ou bogue lors du passage d'arguments ?
A moins que ce ne soit sBasic lui-même ?


C'est un comportement tout à fait incohérent. Je pense que la bogue n'a pas été totalement contournée, et qu'elle perturbe le fonctionnement de Basic. Ma conclusion : attendre la correction complète de IZ 63053

   Bernard


En tout cas merci.

--
Francois GATTO

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à