Mon commentaire ne s'affiche pas avec Excel 2019

Bonjour le Forum,

Je remplis mes données dans la feuille départ et sur ma feuille2 avec une mise à jour je peu voir le résultat dans un commentaire.

J'ai utiliser ce fichier avec Excel 2007, 2013, 2016 tout fonctionnais correctement.

Je suis passer à Excel 2019 et malheureusement il n'y que du blanc impossible de voir mes données.

J'ai beau chercher une solution, mais j'ai rien trouver.

Auriez vous une solution.

Merci d'avance

Balance58

19commentaires.xlsm (27.64 Ko)

Bonjour,

Observation ...

Sur les versions où tu mentionnes que ça ne fonctionne pas ...

En fait, si tu fais un pas-à-pas lent sur le code ... ça fonctionne ...

ric

Bonjour,

C'est au moment de l'exportation en .gif > en automatique, le .gif est vide.

ric

Bonjour ric,

Tu peu me dire ce qu' il faut ajouter ou supprimer au niveau du code pour que cela fonctionne.

Merci de ton aide

Balance58

Bonjour,

Je ne sais pas ... je cherche ...

ric

Bonsoir le forum,

Bonsoir ric,

Quand tu dit

Sur les versions où tu mentionnes que ça ne fonctionne pas

C'est le contraire, cela fonctionne avec les anciennes versions, mais ne fonctionne pas avec 2019.

Merci de ton aide

balance58

Bonjour,

Ceci devrait fonctionner sur plusieurs versions ...

Je te laisse tester ...

Private Sub CommandButton1_Click()
Dim Plage As Range
Dim FichierImage As Variant

    Application.ScreenUpdating = False
    ActiveSheet.Unprotect

    Set Plage = Feuil2.[DD11:DI22]      'CodeName de la feuille
    Chemin = ThisWorkbook.Path & "\"
    MonImage = "MonImage.jpg"           '<<== à adapter

    Plage.EntireRow.Hidden = False    'si nécessaire
    Plage.EntireColumn.Hidden = False
    Plage.CopyPicture

    With ActiveSheet.ChartObjects.Add(0, 0, Plage.Width, Plage.Height).Chart
        .Parent.Activate
        .Paste
        .Export Filename:=Chemin & MonImage, FilterName:="jpg"
        .Parent.Delete
    End With

    Set Cel = Feuil2.[H7]    'CodeName de la feuille

    If Not Cel.Comment Is Nothing Then Cel.Comment.Delete

    With Feuil2.Range("H7").AddComment("")
         With .Shape
            .Fill.UserPicture Chemin & "MonImage.jpg"
            .Width = Plage.Width
            .Height = Plage.Height
        End With
    End With
    Kill Chemin & "MonImage.jpg"    'supprime le fichier jpg
    Plage.EntireColumn.Hidden = True            'si nécessaire
    Application.EnableEvents = True
    ActiveSheet.Protect
End Sub

ric

Bonjour le forum,

Bonjour ric,

Merci pour ton code cela fonctionne super, je t'en remercie.

Par contre j'ai un 2ème fichier si tu pouvais me donner un coup de main.

Dans ThisWorkbook j'ai un code qui affiche automatiquement les commentaires à chaque passage de feuille en feuille.

Seulement celle qui sont égal à 1 dans la cellule A1 des feuilles.

Ce code fonctionne bien avec les versions Excel précédente mais avec pas Excel 2019

J'ai bien essayer d'adapter ton code au mien mais j'ai des bugs.

Merci d'avance de ton aide

Bonne journée

Balance58

Private Sub Workbook_SheetActivate(ByVal sh As Object)
If Cells(1, 1) = 1 Then
Dim Plage As Range, Cel As Range
Set Plage = sh.[DD11:DI22] 'si c'est utile
Set Cel = sh.[H7]
If Cel.Comment Is Nothing Then Exit Sub
Application.ScreenUpdating = False
sh.Unprotect
Plage.EntireRow.Hidden = False 'si nécessaire
Plage.EntireColumn.Hidden = False
Plage.CopyPicture
With Workbooks.Add 'nouveau document (Zoom 100%)
  With .Sheets(1).ChartObjects.Add(0, 0, Plage.Width, Plage.Height).Chart
    .Paste
    .Export ThisWorkbook.Path & "\MonImage.gif", "GIF"
  End With
  .Sheets(1).[A1].Copy .Sheets(1).[A1] 'vide le presse-papier
  .Close False 'supprime le document avec le graphique temporaire
End With
Cel.Comment.Delete
With Cel.AddComment("").Shape
  .Width = Plage.Width
  .Height = Plage.Height
  .Fill.UserPicture ThisWorkbook.Path & "\MonImage.gif"
End With
Kill ThisWorkbook.Path & "\MonImage.gif" 'supprime le fichier gif
Plage.EntireColumn.Hidden = True 'si nécessaire
sh.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
        True
End If
End Sub

Bonjour,

Un essai ...

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim Plage As Range
Dim FichierImage As Variant

    If Cells(1, 1) = 1 Then     ' si A1 contient 1

    Set Sh = ActiveSheet        ' défini Sh comme étant le feuille active
    Application.ScreenUpdating = False
    ActiveSheet.Unprotect

    Set Plage = Sh.[DD11:DI22]      ' défini la plage 
    Chemin = ThisWorkbook.Path & "\"
    MonImage = "MonImage.gif"           '<<== à adapter si nécessaire

    Plage.EntireRow.Hidden = False    ' si nécessaire
    Plage.EntireColumn.Hidden = False
    Plage.CopyPicture

    With ActiveSheet.ChartObjects.Add(0, 0, Plage.Width, Plage.Height).Chart
        .Parent.Activate
        .Paste
        .Export Filename:=Chemin & MonImage, FilterName:="gif"
        .Parent.Delete
    End With

    Set Cel = Sh.[H7]   ' défini Cel comme étant la cellule H7 de la feuille active (Sh)
    If Not Cel.Comment Is Nothing Then Cel.Comment.Delete   ' si H7 contient un commentaire, on le supprime

    With Cel.AddComment("")         ' on ajoute un commentaire à H7 de la feuille active
         With .Shape
            .Fill.UserPicture Chemin & "MonImage.gif"
            .Width = Plage.Width
            .Height = Plage.Height
        End With
    End With

    Kill Chemin & "MonImage.gif"            ' supprime le fichier jpg
    Plage.EntireColumn.Hidden = True        ' si nécessaire
    Application.EnableEvents = True         ' < important de réactiver les événements
    ActiveSheet.Protect
End If
End Sub

ric

Bonjour ric,

Une nouvelle fois merci.

Ton code fonctionne à merveille.

Bon après midi à toi et au forum.

Balance58

ric

Rechercher des sujets similaires à "mon commentaire affiche pas 2019"