Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1928to1932
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

Bild plazierung auf Worksheet ungleich

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. :)

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bild plazierung auf Worksheet ungleich
05.05.2023 09:38:27
ralf_b
Es fällt dem geneigten User schwer sich sowas vorzustellen.
...Die Bilder haben irgendwie, immer wieder, andere Positionen....
Welche andere Positionen? Wie groß ist der Unterschied? Prüfst du bei den Ausreißern die Codeausführung und die Variableninhalte?


AW: Bild plazierung auf Worksheet ungleich
05.05.2023 09:49:54
Shouchen
Hallo Ralf,

das kann ich durchaus verstehen, danke dass du dich der Sache annehmen willst.

Der Unterschied ist nur wenige Millimeter, definitiv kleiner als ein ganzer Zeilen/Spaltenabstand.
Es passt einfach nicht ganz in die Zeilen/Spalten.
Daher kann die Korrektur über die Positionierung auch nicht möglich sein.

Ich habe es auch schon einmal Schrittweise kompiliert um mir anzusehen, ob nach der Bildplazierung etwas sich ändert, aber nein, es wird direkt "falsch" eingesetzt.


Anzeige
AW: Bild plazierung auf Worksheet ungleich
05.05.2023 09:59:22
ralf_b
sind die Größenunterschiede nur an der rechten und unteren Seite zu sehen oder passt die top ,left Position auch nicht?


AW: Bild plazierung auf Worksheet ungleich
05.05.2023 10:06:40
Shouchen
Der Versatz ist immer ganz leicht insgesamt, die Größe des Bilders stimmt aber.


AW: Bild plazierung auf Worksheet ungleich
05.05.2023 10:13:03
ralf_b
vielleicht liegts auch an der Auflösung(dpi). Sind die Bilder dahingehend unterschiedlich? Im Excel gibt es Einstellungen in welcher Auflösung Bilder eingefügt werden. Wenn die Umrechnung evtl. nicht so genau passt, dann sind sie möglicherweise hinterher unterschiedlich groß.

Sonst fällt mir da auch nichts weiter ein.


AW: Bild plazierung auf Worksheet ungleich
05.05.2023 10:18:50
Shouchen
Ahhh ok!
Das habe ich noch garnicht in Betracht gezogen, ja, sind Sie.
In die Richtung werde ich mal gucken, die Bilder haben auch teilweise unterschiedliche Formate. (.jpg/.bmp)


Anzeige
AW: Bild plazierung auf Worksheet ungleich
05.05.2023 11:20:40
Shouchen
Update:

Der Fehler trifft nicht mehr auf, wenn ich aktiv mit dem Bildschirm auf das Worksheet springe, wo ich das Bild einfüge.
Wenn ich das nicht mache, dann ist das Bild leicht aus Position, wenn ich vorher:
Worksheet(x).Activate mache, um es für den Moment anzuzeigen, sitzt das Bild perfekt.


AW: Bild plazierung auf Worksheet ungleich
05.05.2023 09:56:40
Rudi Maintaire
Hallo,
was soll das mit Col_Letter? Ist doch überflüssig, den Spaltenbuchstaben zu ermitteln.
Ich würde das so schreiben:
    With img
        .Name = Monster_Abfrage_Erschaffung.Auswa_Monster_Name.Value
        .ShapeRange.LockAspectRatio = msoFalse
        .Placement = 1
        .Width = sht.Columns(Start_Pos + 6).Resize(, 3).Width
        .Height = sht.Rows(37).Resize(12).Height
        .Left = sht.Columns(Start_Pos + 6).Left
        .Top = sht.Rows(37).Top
    End With
Gruß
Rudi


Anzeige
AW: Bild plazierung auf Worksheet ungleich
05.05.2023 10:07:49
Shouchen
Ahhh ok,
wieder was gelernt.
Wusste ich nicht, sonst hätte ich mir das Leben gewiss auch nicht so schwer gemacht. :D
Danke

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige