Je voudrais ajouter un texte qui figure sur une feuille Excel comme
commentaire (Comment) sur la cellule d'une autre autre feuille, par VBA.
Si le texte source provient d'une seule cellule, pas de problème.
Mais comment faire pour un texte de deux lignes horizontales et plusieurs
lignes verticales ? En plus, en horizontale il y a un texte à gauche et un
chiffre à droite. Sur le commentaire de la cellule cible, le chiffres
devraient être alignés.
Merci d'avance pour tout conseil.
Cordialement,
Max
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
JB
On 8 fév, 17:31, "Max" wrote:
Bonjour,
Je voudrais ajouter un texte qui figure sur une feuille Excel comme commentaire (Comment) sur la cellule d'une autre autre feuille, par VBA. Si le texte source provient d'une seule cellule, pas de problème. Mais comment faire pour un texte de deux lignes horizontales et plusieurs lignes verticales ? En plus, en horizontale il y a un texte à gauche et un chiffre à droite. Sur le commentaire de la cellule cible, le chiffres devraient être alignés. Merci d'avance pour tout conseil. Cordialement, Max
Bonjour,
Sub essai() With ActiveSheet .[E1:I5].CopyPicture .Paste Destination:=.Range("A1") 'crée un shape Set s = .Shapes(.Shapes.Count) s.CopyPicture .ChartObjects.Add(0, 0, s.Width, s.Height * 1.6).Chart.Paste .ChartObjects(1).Chart.Export Filename:="monimage.jpg", FilterName:="jpg" .Shapes(.Shapes.Count).Delete .Shapes(.Shapes.Count).Delete End With With ActiveSheet.Range("A1") .ClearComments .AddComment .Comment.Shape.Fill.UserPicture "Monimage.jpg" .Comment.Shape.ScaleHeight 1.6, msoFalse, msoScaleFromTopLeft .Comment.Shape.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft End With End Sub
On 8 fév, 17:31, "Max" <nospam-...@wanadoo.fr> wrote:
Bonjour,
Je voudrais ajouter un texte qui figure sur une feuille Excel comme
commentaire (Comment) sur la cellule d'une autre autre feuille, par VBA.
Si le texte source provient d'une seule cellule, pas de problème.
Mais comment faire pour un texte de deux lignes horizontales et plusieurs
lignes verticales ? En plus, en horizontale il y a un texte à gauche et un
chiffre à droite. Sur le commentaire de la cellule cible, le chiffres
devraient être alignés.
Merci d'avance pour tout conseil.
Cordialement,
Max
Bonjour,
Sub essai()
With ActiveSheet
.[E1:I5].CopyPicture
.Paste Destination:=.Range("A1") 'crée un shape
Set s = .Shapes(.Shapes.Count)
s.CopyPicture
.ChartObjects.Add(0, 0, s.Width, s.Height * 1.6).Chart.Paste
.ChartObjects(1).Chart.Export Filename:="monimage.jpg",
FilterName:="jpg"
.Shapes(.Shapes.Count).Delete
.Shapes(.Shapes.Count).Delete
End With
With ActiveSheet.Range("A1")
.ClearComments
.AddComment
.Comment.Shape.Fill.UserPicture "Monimage.jpg"
.Comment.Shape.ScaleHeight 1.6, msoFalse, msoScaleFromTopLeft
.Comment.Shape.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft
End With
End Sub
Je voudrais ajouter un texte qui figure sur une feuille Excel comme commentaire (Comment) sur la cellule d'une autre autre feuille, par VBA. Si le texte source provient d'une seule cellule, pas de problème. Mais comment faire pour un texte de deux lignes horizontales et plusieurs lignes verticales ? En plus, en horizontale il y a un texte à gauche et un chiffre à droite. Sur le commentaire de la cellule cible, le chiffres devraient être alignés. Merci d'avance pour tout conseil. Cordialement, Max
Bonjour,
Sub essai() With ActiveSheet .[E1:I5].CopyPicture .Paste Destination:=.Range("A1") 'crée un shape Set s = .Shapes(.Shapes.Count) s.CopyPicture .ChartObjects.Add(0, 0, s.Width, s.Height * 1.6).Chart.Paste .ChartObjects(1).Chart.Export Filename:="monimage.jpg", FilterName:="jpg" .Shapes(.Shapes.Count).Delete .Shapes(.Shapes.Count).Delete End With With ActiveSheet.Range("A1") .ClearComments .AddComment .Comment.Shape.Fill.UserPicture "Monimage.jpg" .Comment.Shape.ScaleHeight 1.6, msoFalse, msoScaleFromTopLeft .Comment.Shape.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft End With End Sub