AW: Druckansicht als Bild in Kommentar einfügen
20.03.2009 18:12:59
Beverly
Hi Stefan,
ergänze den Code um die folgende Zeile, dann wird die exportierte Bilddatei auch wieder gelöscht:
Kill "C:\Test\Bild.jpg"
Die in das Tabellenblatt eingefügte Bildkopie des Bereichs A1:G50 und das für den Bildexport als JPG erforderliche Diagramm werden in dem geposteten Code bereits wieder gelöscht.
Wenn du nicht das Tabellenblatt, in welches der Kommentar eingefügt werden soll, als "Zwischenspeicher" verwenden willst, kannst du auch ein anderes (z.B. leeres) Tabellenblatt dazu verwenden. Der Code würde dann so aussehen (einschließlich Löschen der exporierten Bilddatei):
Sub BereichAlsBildInKommentar()
Dim chDiagramm As ChartObject
Dim comKommentar As Comment
Application.ScreenUpdating = False
If ActiveCell.Comment Is Nothing Then
Range("A1:G50").CopyPicture Appearance:=xlScreen, Format:=xlPicture
With Worksheets("Tabelle2")
.Paste
Set chDiagramm = .ChartObjects.Add(0, 0, .Shapes(1).Width, .Shapes(1).Height)
With chDiagramm.Chart
.Paste
.Export Filename:="C:\Test\Bild.jpg", FilterName:="JPG"
End With
Set comKommentar = ActiveCell.AddComment
With comKommentar
.Visible = False
.Text Text:=""
.Shape.Fill.UserPicture "C:\Test\Bild.jpg"
.Shape.Height = Worksheets("Tabelle2").Shapes(1).Height
.Shape.Width = Worksheets("Tabelle2").Shapes(1).Width
End With
chDiagramm.Delete
.Shapes(1).Delete
End With
End If
Set chDiagramm = Nothing
Set comKommentar = Nothing
Kill "C:\Test\Bild.jpg"
Application.ScreenUpdating = True
End Sub
Das Öffnen und Schließen der Arbeitsmappe kannst du mit dem Makrorekorder aufzeichnen.