Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

[Excel] Problem bei "ActiveSheet.Pictures.Insert" umgehen
#1
Seit Excel 2010 gibt es ein Problem wenn man Bilder mit ActiveSheet.Pictures.Insert einfügt. Beim Einfügen wird das Bild nur als Verknüpfung eingefügt. Auf anderen Rechnern, auf denen das Bild nicht vorhanden ist, kommt es natürlich zu einer fehlerhaften Anzeige. Im Internet wird immer nur auf ActiveSheet.Shapes.AddPicture verwiesen. Es gibt aber eine andere Lösung. Um dieses Problem zu umgehen kopiert man das eingefügte Bild, löscht es und fügt es (aus der Zwischenablage) neu ein. Funktioniert bei mir gut.

Ein Auszug aus meinem Projekt:
Public Sub RefreshRangeOne()
On Error Resume Next

Dim pngInsert As String
Dim strRNG    As Range

pngInsert = Environ("USERPROFILE") & "\Desktop\Benutzer1.tif"
   
With ActiveSheet
    .Unprotect "Passwort"
    .Pictures.Insert(pngInsert).Select
   
     With Selection
         .Copy
         .Delete
     End With
     
     Range("B9").Select
     Set strRNG = ActiveCell
     strRNG.PasteSpecial xlPasteAll

     Kill pngInsert

    .Protect "Passwort"
End With
End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Vorteil von ActiveSheet.Pictures.Insert ist dass man es exakt an der Zelle einfügen kann an der man es möchte. Bei der Alternative ActiveSheet.Shapes.AddPicture muss man leider exakte Positionsangaben setzen, was aber in der Praxis nie sauber funktioniert.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste