Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bild in akive Zelle kopieren

Bild in akive Zelle kopieren
04.02.2015 10:03:36
Stef26
Hallo,
wie kann ich per Macro ein Bild in die active Zelle kopieren ?
Habs mit
ActiveSheet.Shapes.Range(Array("Picture 1")).Copy
ActiveCell.Paste
versucht, bringt aber einen Fehler.
Und wie kann ich aus der aktiven Zelle per Macro das Bild wieder entfernen?
Gruß
Stefan

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bild in akive Zelle kopieren
04.02.2015 11:00:18
yummi
Hallo Stef,
hatte mal so was gemacht:

Function GraphicfileInZelleEinfuegen(lngZeile As Long, lngSpalte As Long, strDatei As String, _
Optional strPfad As String = "")
Dim shpNeu As Object
Dim iFaktor As Integer
Dim wksTabelle As Worksheet
Dim rng As Range
Set wksTabelle = ActiveSheet
iFaktor = wksTabelle.Cells(lngZeile, lngSpalte).MergeArea.Columns.Count
If strPfad = "" Then
strPfad = ActiveWorkbook.Path
End If
If Right(strPfad, 1)  "\" Then strPfad = strPfad & "\"
If Dir(strPfad & strDatei)  "" Then
'alte Wappen löschen
On Error Resume Next
wksTabelle.Shapes.Range(Array("Grafik" & lngSpalte & lngZeile)).Delete
Set rng = wksTabelle.Range(wksTabelle.Cells(lngZeile, lngSpalte), wksTabelle.Cells( _
lngZeile, lngSpalte))
Set shpNeu = wksTabelle.Pictures.Insert(strPfad & strDatei)    'evtl noch Abfrage ob _
Datei überhaupt vorhanden
shpNeu.Top = wksTabelle.Rows(lngZeile).Top
With shpNeu
With .ShapeRange
.LockAspectRatio = msoTrue
If .Height > rng.Height Then .Height = rng.Height
If .Width > rng.Width * iFaktor Then .Width = rng.Width * iFaktor
End With
'.Height = wksTabelle.Rows(lngZeile).Height
'.Left = wksTabelle.Columns(lngSpalte).Left
.Name = "Grafik" & lngSpalte & lngZeile
.Top = rng.Top + (rng.Height - .Height) / 2
.Left = rng.Left + (rng.Width * iFaktor - .Width) / 2
End With
Else
MsgBox strPfad & strDatei & " nicht vorhanden"
End If
Set wksTabelle = Nothing
End Function
Da kannst du zeile und spalte angeben wo das Bild hin soll. zusätzlich noch den Bildnamen (Dateinamen) und optional noch den Pfad, wenn es woanders liegt als die Atbeitsmappe.
du kannst in der Zelle wo es stattfinden soll =GraphicfileInZelleEinfuegen mit den gewünschten Parametern aufrufen oder aber aus VBA heraus.
Sollte weiterhelfen
Gruß
yummi

Anzeige
AW: Bild in akive Zelle kopieren
04.02.2015 15:37:51
Stef26
Hallo Yummi,
danke das hat mir gereicht um mein Problem lösen zu können.
Danke
:-)
Stefan
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige