Ascenseur ou chariot

Bonsoir,

J'ai corrigé mon erreur et j'ai arrangé le popup des 2 cellules.

Lors de l'impression, j'ai 4 pages alors que ma feuille n'en possède que deux. A votre avis avis d'où vient l'erreur?

Merci à vous

Cordialement

3chariotv6-2.xlsm (26.44 Ko)

Comme tu peux le voir, les commentaires sont à raz du bord droit de la première et seconde page et donc, les bords des deux commentaires se trouvent juste sur les bords gauche des deux autres feuilles. Pour ça , il te faut réduire légèrement la colonne A par exemple

5chariotv6-2.xlsm (27.42 Ko)

Bonsoir Theze,

Tu n'as pas le même code que moi. Quand tu passes ta souris sur la cellule, un commentaire s'affiche et si tu cliques, la cellule s'agrandit pour qu'on puisse imprimer. La marge c'est OK pour moi

Est ce que tu as vu la différence entre les 2 versions ???? La V6-2 que tu m'a envoyé, le commentaire s'affiche, mais la cellule ne s'agrandi pas donc on neut peut imprimer tout le texte....

Cordialement

2chariotv6-3.xlsm (26.46 Ko)

Bonjour,

Donc, tu n'as pas lu mon message du 12/nov/2017 de 8:50 ou tu as dis dans le précédant :

Seul inconvénient, il faut cliquer dessus pour que le test soit visible à l'impression. Mais c'est top

Ma question : est ce qu'on peut faire pour les deux cellules?

je t'ai donné un code qui paramètre les commentaires seulement pour l'aperçu avant impression et/ou pour l'impression et le code prend aussi en compte les deux cellules !

Les sélections de cellules permettent seulement de cacher les commentaires !

Bonjour à tous et salut Theze,

J'ai bien lu la réponse et repris ton code et je observé que les changement de comments sur la C17, certains changements comme j'ai répondu au sujet du 12/11 : Un commentaire s'affiche au passage de la souris sur la C17 et pas sur la C3. A l'impression les textes ne s'affichent pas. Je pense avoir mal rentré le code, à vérifier svp!

C-joint le même travail si vous voulez vérifier l'erreur, merci à vous !!!

Cordialement

6chariotv6-4.xlsm (26.84 Ko)

Bonjour wall,

Même le Grand Manitou est cuisinier, à ses heures ! il a regardé la solution du shaman Theze

et l'a mis pour toi à sa sauce au pemmican (voir photo ci-dessous).

Avec ton pointeur de souris, survole le cadre bleu et regarde le commentaire ; puis fais un clic droit

sur le cadre bleu, et dans le menu contextuel, choisis : « Effacer le commentaire » ; ensuite, fais un

clic gauche en cellule E22 (par exemple), puis va de nouveau survoler ton beau cadre bleu ; alors,

c'est ok ? c'est bien ce que tu désirais ? mais vérifie quand même aussi que c'est ok aussi pour

l'impression ; ai pas testé car papier mauvaise médecine : pas bon pour arbres et environnement !

Merci de me dire si ça te convient.

Cordialement, dhany

screen
5chariotv6.xlsm (31.27 Ko)

Bonjour à tous,

Merci Dhany pour cette réponse. Pour le survol c'est ok pas de souci mais à l'impression, voila ce que ça donne en fichier joint.

Cordialement

6essai.pdf (336.27 Ko)

J'ai bien vu ton fichier essai.pdf ; ce que tu aurais voulu, je crois que c'est cela :

le texte des cellules avec la couleur du fond bleu et celle du fond brun, mais

avec aussi le texte complet ; j'ai vraiment aucune idée pour faire ça, sauf à

augmenter la hauteur de la ligne pour que le texte soit entièrement visible

à l'écran, mais je sais que tu ne veux pas cela ; alors peut-être en ajoutant

un code VBA à la sub BeforeClose() pour imprimer le texte complet des

cellules ou des commentaires ? c'est juste une piste à suivre, pour Theze,

un autre intervenant ou toi ; moi, ça me paraît bien compliqué !

bonne chance quand même pour la suite !

PS : même si c'est ok pour le survol, regarde quand même le code VBA

de mon précédent fichier joint : il devrait en principe t'intéresser.

Merci dhany

La version la plus proche de ce que je souhaite c'est celle avec le survol et quand je clique sur ka cellule elle s'agrandit et la je peux l'imprimer.

C'est ok pour moi

Merci à vous tous

Cordialement

Dans ce fameux post, j'ai dis :

Dans ce cas, il suffit d'incorporer le code paramétrant les commentaires dans la procédure événementielle "BeforePrint()" du classeur :

et :

Ce qui aura pour effet de rendre imprimable ces derniers (attention aux hauteurs pour que l'un ne cache pas l'autre) mais comme il n'existe pas de procédure "AfterPrint()", la procédure "SelectionChange()" peut être utilisée pour cacher le commentaire :

Donc, voila à nouveau ton classeur mais il te faut mettre les codes que je t'ai donné au bon endroit (ce qui est fait ici !) c'est à dire un dans le module de la feuille :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    With Range("C3")

        If Not .Comment Is Nothing Then

            .Comment.Shape.Left = Range("C3:E3").Left + Range("C3:E3").Width
            .Comment.Visible = False
            .Comment.Shape.DrawingObject.Interior.ColorIndex = 19

        End If

    End With

    With Range("C17")

        If Not .Comment Is Nothing Then

            .Comment.Shape.Left = Range("C17:E17").Left + Range("C17:E17").Width
            .Comment.Visible = False
            .Comment.Shape.DrawingObject.Interior.ColorIndex = 19

        End If

    End With

End Sub

et l'autre dans le module du classeur :

Private Sub Workbook_BeforePrint(Cancel As Boolean)

    With Range("C3")

        If .Comment Is Nothing Then .AddComment

        .Comment.Text .Value
        .Comment.Visible = True
        .Comment.Shape.Height = 270 '<--- adapter la hauteur du commentaire
       .Comment.Shape.Width = Range("C3:E3").Width
        .Comment.Shape.Top = Range("C3:E3").Top
        .Comment.Shape.Left = Range("C3:E3").Left
        .Comment.Shape.DrawingObject.Interior.ColorIndex = 2

    End With

    With Range("C17")

        If .Comment Is Nothing Then .AddComment

        .Comment.Text .Value
        .Comment.Visible = True
        .Comment.Shape.Height = 350 '<--- adapter la hauteur du commentaire
       .Comment.Shape.Width = Range("C17:E17").Width
        .Comment.Shape.Top = Range("C17:E17").Top
        .Comment.Shape.Left = Range("C17:E17").Left
        .Comment.Shape.DrawingObject.Interior.ColorIndex = 2

    End With

    ActiveSheet.PageSetup.PrintComments = IIf(ActiveSheet.Name = "Feuil1", 16, -4142)

End Sub

Ensuite, pour tester tu fait un Aperçu avant impression et tu auras les deux commentaires visibles et probablement comme chez moi, sur deux feuilles.

Bonsoir, Theze,

Je pense que je peux m'incliner au regard du résultat.

Je peux fermer le sujet avec mes respects bien sûr pour ce travail de minutie pour ne pas dire sorcier au risque de faire plaisir à Dhany.

Merci pour ce partage à vous tous

Cordialement

Wall

mais ça me fait plaisir que tu fasses plaisir à Dhany et bien sûr, je te remercie pour tes remerciements

Si, si, je confirme : vous m'avez fait bien plaisir, et merci d'avoir pensé à moi !

ravi que tu aies pu passer le sujet en résolu grâce à la solution de Theze !

Bonjour à tous,

Je ré ouvre ce fil car j'ai une erreur avec le code. J'ai remarqué une erreur dans : .Comment.Text .Value Quand il n'y a pas de texte dans la C17, car en cliquant dessus, elle affiche une erreur dans comment.text. D'autres part, malgré l'absence du texte, un commentaire du texte absent ou supprimé s'affiche en survolant C17 (texte fantôme). Bizarre !

Auriez vous une solution?

Merci d'avance

Cordialement

8chariotv6-3.xlsm (26.24 Ko)

Bonjour,

Il te faut enlever la protection de la feuille !

Les commentaires n'acceptent que du String donc, si il y a un risque de valeurs numériques, il faut convertir :

.Comment.Text CStr(.Value)

Bonsoir à tous,

Auriez vous une idée d'ou vient le 0 qui s'affiche sur la c17; sur le commentaire aussi ?

Merci encore

Cordialement

5chariotv6-5.xlsm (26.11 Ko)

Bonsoir wall,

Ton 0 viens de ta formule en C17 : =Feuil2!C1 alors que C1 est vide ;

solution : nouvelle formule en C17 : =SI(Feuil2!C1="";"";Feuil2!C1)

Mais bien sûr, il faut changer le format : Standard au lieu de Texte

pour que la formule puisse être interprétée ! n'oublie pas de faire,

en C17, F2 et Entrée après mise en format Standard !

Effacer le commentaire de C17 pour que le 0 n'apparaisse plus !

Je te retourne ton fichier modifié :

8chariotv6-5.xlsm (25.39 Ko)

Je ne suis pas sûr que ça sera bon, alors vérifie bien tout !

Cordialement,

dhany

Bonjour dhany, salut à tous,

J'ai fait des essais et cela fonctionne comme je souhaite sur le fichier joint. La formule est fonctionnelle, par contre sur mon fichier projet, j'ai une autre formule qui affiche 0. Elle est modifiable ou pas ? Merci

=INDEX(Feuil2!$Q$4:$Q$99;Graph!$D$1)

Cordialement

Bonjour wall,

Pour enlever ton 0, la solution serait la même que pour ton autre formule :

=SI(INDEX(Feuil2!$Q$4:$Q$99;Graph!$D$1)=0;"";INDEX(Feuil2!$Q$4:$Q$99;Graph!$D$1))

Je dis « serait » car vu la longueur de la formule juste pour éviter l'affichage d'un 0,

ça vaut pas l'coup, et c'est mieux d'laisser la formule actuelle ; utilise plutôt un de

ces formats personnalisés :

"# ###0;-# ###0;" : affichage des nombres positifs et négatifs sans affichage du 0 (; final !)

"# ###0;;" : affichage des nombres positifs uniquement, ni les négatifs ni les 0 (;; final)

Les 2 formats ci-dessus sont avec un espace séparateur de milliers ; si tu n'en n'as pas

besoin, utilise plutôt : "0;-0;" ou "0;;" ; enfin, mets ,00 après le dernier 0 si tu veux des

nombres avec 2 chiffres après la virgule ; 2 exemples : "# ###0,00;-# ###0,00;"

et "0,00;;"

Cordialement

Bonsoir à tous,

Merci pour ta réponse, tout est ok

A bientôt

Rechercher des sujets similaires à "ascenseur chariot"