Anzeige
Archiv - Navigation
1664to1668
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Problem beim BILD-EINFÜGEN in Zelle per VBA

Problem beim BILD-EINFÜGEN in Zelle per VBA
09.01.2019 20:01:44
Jens
Guten Abend, liebe Excel-Profis!
Ich füge per VBA Bilder per DateiÖffnen-Dialog in einen ungeschützten Zellbereich einer geschützten Tabelle ein, wobei die Bildgröße dem Bereich automatisch angepasst wird. Dies funktioniert auch sehr gut; dass es sich beim Einfüge-Bereich um verbundene Zellen handelt spielt keine Rolle.
Problem / Frage:
Wenn es sich um Bilder handelt, die laut Eigenschaft ("Grafik formatieren") "Drehung 90 Grad" aufweisen (anstatt normal 0 Grad), werden diese IRGENDWO (!!) im Blatt eingefügt. Nun habe ich im u. a. Code schon mal die Zeile
.IncrementRotation -90
hinter With Selection.ShapeRange eingefügt, doch das hilft nur bei solchen mit 90 Grad (allerdings liegen diese dann auf der Seite und werden von der urspr. Höhe her minimal gestutzt). Bilder mit 180 Grad werden dann auf den Kopf gestellt und doch wieder IRGENDWO eingefügt.
Wie kann ich durch welche Abfragen (habe bei ShapeRange und in unzähligen Posts nichts gefunden) und Code-Ergänzung dieses Problem lösen? Wäre sehr dankbar für Antworten!!!
Mein Code (der gestartet wird über

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
...  _
Call Bild_einfügen1
...) :
Sub Bild_einfügen1()
Dim Dat As String
Dim Zelle As Range
Dim ScaleA As Double
Application.ScreenUpdating = False
Set Zelle = Sheets("Bautenstand").Range("B4:E14") 'hier wird das bild eingefügt
Dat = Application.GetOpenFilename(, , "Bild auswählen", , False)
Select Case Right(Dat, 4)
Case ".bmp", ".jpg", "jpeg", ".tif", ".gif", ".png", ".BMP", ".JPG", ".JPEG", ".TIF", ".GIF", ". _
PNG"
ActiveSheet.Pictures.Insert(Dat).Select
With Selection.ShapeRange
.IncrementRotation -90 'dreht 90er Bilder und passt linksgedreht
'gestaucht ein ---> hier brauche ich Hilfe!
.Top = Zelle.Top
.Left = Zelle.Left
ScaleA = WorksheetFunction.Min(Zelle.Width / .Width, Zelle.Height /  .Height)
.Height = .Height * ScaleA
End With
Selection.Placement = xlMoveAndSize
Selection.PrintObject = True
Case Else
MsgBox "Sie haben kein gültiges Bild ausgewählt"
End Select
Application.ScreenUpdating = True
End Sub


		

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem beim BILD-EINFÜGEN in Zelle per VBA
10.01.2019 20:59:47
udo
Hallo Jens, habe deinen Beitrag gerade nur überflogen,
hast du schon ... probiert ?
Selection.ShapeRange.IncrementRotation -90
bzw. bei dir
.Selection.ShapeRange.IncrementRotation -90
Versuch ists wert , hoffentlich klappts
LG
AW: Problem beim BILD-EINFÜGEN in Zelle per VBA
10.01.2019 21:38:46
Jens
Hi Daniel!
Lieben Dank für deine Antwort!
Hatte ich.
Durch weitere Internet-Recherche hier die Lösung:
Hinter "With Selection.ShapeRange" füge ich sofort "If .Rotation 0 Then .Rotation = 0" ein. Jetzt werden alle Bilder gleich "gedreht". Je nach Drehungswinkel kommen dann einige "liegend" in den Rahmen, aber das macht nichts. "Schuld" ist dann z. B. ein SAMSUNG S5. Grins.
Schönen Abend an alle!
J e n s
Anzeige
AW: Problem beim BILD-EINFÜGEN in Zelle per VBA
10.01.2019 21:40:39
Jens
Sorry. U D O !! Hihi... Hatte mich so über meine Lösung gefreut ;-)))
AW: Problem beim BILD-EINFÜGEN in Zelle per VBA
10.01.2019 21:57:23
udo
Hi Jens, gerne,
das wäre das nächste was ich dir evtl. noch mitgeben hätte können, aber dann hörts bei mir auch auf mit den Ideen
haha ;-)
LG

329 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige