Bild plazierung auf Worksheet ungleich
05.05.2023 08:46:37
Shouchen
Hallo allerseits,
ich habe ein Problem mit der Bildplazierung aus einer Userform heraus.
Ich lade ein Bild in einer Userform, als Vorschau sozusagen, um es mir dann anzusehen.
Dann nutze ich einen bestimmten Worksheet, wie eine Datenbank, dabei soll dieses Bild, in einer bestimmten Zeilen/Spalten Position über mehrere Spalten/Zeilen positioniert werden.
Das Problem ist: Die Bilder haben irgendwie, immer wieder, andere Positionen und verstehe nicht woran es liegt.
Manchmal war ich mir sicher, dass es jetzt funktionieren würde, dann plötzlich wieder, andere Ergebnisse. Alle Zeilen und Spalten haben immer die gleichen Breiten/Hoehen, welche im Vorfeld festgelegt sind.
Im folgenden sieht man den Code:
Sub TransferToSheet(picControl, sht As Worksheet, Start_Pos As Long)
Dim img As Picture
Const TemporaryFolder = 2
Dim fso, p
Set fso = CreateObject("scripting.filesystemobject")
p = fso.GetSpecialFolder(TemporaryFolder).Path & "\" & fso.GetTempName
SavePicture picControl.Picture, p
Set img = sht.Pictures.Insert(p)
With img
.Name = Monster_Abfrage_Erschaffung.Auswa_Monster_Name.Value
.ShapeRange.LockAspectRatio = msoFalse
.Width = sht.Range(Col_Letter(Start_Pos + 6) & "37" & ":" & Col_Letter(Start_Pos + 8) & "37").Width
.Height = sht.Range(Col_Letter(Start_Pos + 6) & "37" & ":" & Col_Letter(Start_Pos + 6) & "48").Height
.Placement = 1
.Left = sht.Range(Col_Letter(Start_Pos + 6) & "37").Left
.Top = sht.Range(Col_Letter(Start_Pos + 6) & "37").Top
End With
fso.DeleteFile p
End Sub
Wie man am Code erkennt, es ist für das Privatvergnügen ein Pen and Paper System anzulegen. Es ist eine Art Monsterdatenbank, die relativ groß ist, daher kann ich schlecht den gesamten Code posten.
Zur Erklärung:
Der wichtige Part ist für mich ab "With img"
Ich benenne das Bild.
Sage das Bild soll in seinen Verhältnissen nicht mehr blockiert sein.
Ich gebe dem Bild eine Breite und Höhe.
Das "Placement" soll an die Zellen gebunden sein.
Nun den Abstand nach Links und nach oben festlegen, um das Bild zu positionieren.
Ich bin für jede Hilfe dankbar, auch wenn eventuell jemand einen bequemeren Weg hat, ein Bild aus einer Userform heraus auf den Worksheet zu werfen.
Vielen Dank allerseits, im voraus. :)