Mit VBA einfügen und damit die Bilder im Datei - Excel-2013
Ich arbeite an einem makro für einen Freund von mir, muss importieren Sie eine Reihe von Bildern in eine excel-Dokument und später verwenden Sie dieses Dokument auf anderen Computern. Das problem, das ich gestoßen ist, dass beim öffnen dieses Dokuments auf einem anderen computer, alle Bilder sind Weg und stattdessen bekommt man diese kleinen Fehler Zeichen, das anzeigt, dass der image-Pfad konnte nicht gefunden werden.
Entwickelt ich das makro auf meinem eigenen Rechner, wo ich habe Excel 2007 und für mich, der code funktioniert einwandfrei. Mein Freund verwendet Excel 2013, und offenbar scheint es einen großen Unterschied, wie diese 2-Versionen-deal mit der Bild importieren und speichern.
Insgesamt fand ich 2 verschiedene Möglichkeiten, wie man Bilder einfügen. Das erste, das ich versuchte, war so etwas wie dies:
Set pic = ActiveSheet.Pictures.Insert("C:\documents\somepicture.jpg")
Den zweiten Weg, dies sah so aus:
Set pic = Application.ActiveSheet.Shapes.AddPicture("C:\documents\somepicture.jpg", False, True, 1, 1, 1, 1)
In der Dokumentation für das 2. Ansatz es wird gesagt, dass der 3. paramenter (gilt auch hier) ist verantwortlich für das speichern das Bild mit dem Dokument.
Jedoch, diese beiden Ansätze, die sich mehr oder weniger in dem gleichen Ergebnis: Sie funktionieren für mich, aber wird nicht funktionieren, wenn Sie ausgeführt werden, auf meine Freunde, pc mit Excel 2013. Also, was ich brauche, ist ein work-around für die neueren Excel-Versionen (ich habe irgendwo gelesen, dass von Excel 2010 nach oben, es ist ein bug oder so etwas wie, dass mit dieser Bild-import-Methoden).
InformationsquelleAutor FlyingM | 2013-11-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
In alle meine Anwendungen, Hinzufügen von ein Bild mit
Insert
macht eine Referenz zu einer Datei auf Ihrer Festplatte, aus welchem Grund auch immer, wenn Sie das Bild in die Datei eingebettet werden, müssen Sie eine Form aus und legen Sie dann das Bild auf die Form mit derAddPicture
(wie auch), ich hatte noch nie Probleme mit dieser.Auch Sie geben dem Bild eine Höhe und Breite von 1 pixel, Sie werden fast nie in der Lage sein zu sehen, dass die wahre Einstellung, die höher als unten:
Habe ich das Gefühl es wurde arbeiten alle zusammen und man nie genau sah das Bild Ursache war es zu klein.
Zusätzlicher Hinweis: Sie können mit -1 für Breite und Höhe auf Bild einfügen mit der tatsächlichen Größe.
InformationsquelleAutor user2140261
Vorherige Antwort war wirklich hilfreich! Ich wollte nur hinzufügen, der Verweis auf die Parameter der Methode (ich dachte, die Breite und die Höhe wurden in Pixeln, stellt sich heraus, dass Sie in Punkte):
https://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.shapes.addpicture.ASPX
InformationsquelleAutor Alexandre Madurell
Ich in der Regel ein makro ausführen, die downloads der Bilder von einem server in Dateien, die werden dann weitergeleitet an die Kunden, die keinen Zugang zu diesem server. Meine Programmierung ist Recht einfach, so werde ich gerade kopieren Sie die Linie, die ich verwenden, um das Bild einfügen:
Ich weiß, das ist technisch der gleiche code wie die, die Sie vorgeschlagen, aber versuchen Sie es mit msoCTrue und msoFalse. Ich scheine zu erinnern, dass Teil der Probleme. Lassen Sie mich wissen, wenn es funktioniert und vielleicht können wir etwas anderes versuchen. Es funktioniert für mich, also wir sollten in der Lage sein, um es für Sie zu arbeiten.
InformationsquelleAutor Alan Morrison Fell
Dem ersten snippet funktioniert, aber es nicht zulassen, Bild-Positionierung (also wenn Sie benötigen ein Foto platziert in einem bestimmten Bereich), also machte ich etwas, das funktioniert gut mit der Positionierung zur Verfügung, basierend auf die zweite Lösung, wie es unten gezeigt wird.
InformationsquelleAutor Андрей Романов