Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bildposition ermitteln

Bildposition ermitteln
Frank
Hallo liebe Excel Gemeinde,
gibt es eine Möglichkeit über VBA die Position eines Bildes zu ermitteln um so den Druckbereich festzulegen?
Vielebn Dank schon mal
Gruß
Frank
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
DeinBild.Top und DeinBild.Left usw.
12.03.2012 11:06:59
Matthias
Hallo
MsgBox "Top: = " & ActiveSheet.Shapes("Grafik 1").Top & vbLf & "Left: = " & ActiveSheet.Shapes("Grafik 1").Left
Userbild
Gruß Matthias
AW: DeinBild.Top und DeinBild.Left usw.
12.03.2012 11:11:26
Frank
Hallo Matthias,
hat sich gerade mit meinem zweiten eintrag überschnitten.
Trotzdem vielen Dank
Gruß
Frank
Anzeige
@Matthias: Wessen Profilbild ist das ? ;-) _oT
12.03.2012 13:06:40
NoNet
_oT = "ohne Text"
Meins ... ;-) _oT
12.03.2012 23:02:50
Matthias
AW: Bildposition ermitteln
12.03.2012 11:10:22
Frank
Habe es selber gefunden.
Wenn es interessiert
Set MeinBild = ActiveSheet.Shapes("Picture 1")
Position1 = MeinBild.TopLeftCell.Address
Position2 = MeinBild.BottomRightCell.Address

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Bildposition in Excel ermitteln


Schritt-für-Schritt-Anleitung

Um die Position eines Bildes in Excel über VBA zu ermitteln, kannst du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Rechtsklicke auf VBAProject (DeineDatei.xlsx), wähle Einfügen und dann Modul.

  3. Füge den Code ein: Kopiere den folgenden VBA-Code in das Modul:

    Sub BildPositionErmitteln()
       Dim MeinBild As Shape
       Set MeinBild = ActiveSheet.Shapes("Picture 1") ' Ersetze "Picture 1" mit dem Namen deines Bildes
    
       MsgBox "Top: " & MeinBild.Top & vbLf & "Left: " & MeinBild.Left
    End Sub
  4. Führe das Makro aus: Drücke F5, um das Makro auszuführen, und die Position des Bildes wird in einer MessageBox angezeigt.


Häufige Fehler und Lösungen

  • Fehler: "Shape nicht gefunden"
    Lösung: Stelle sicher, dass der Name des Bildes korrekt ist. Du kannst den Namen in der Excel-Oberfläche überprüfen, indem du das Bild auswählst und den Namen in der Formelleiste anschaust.

  • Fehler: MsgBox zeigt keine Werte an
    Lösung: Überprüfe, ob du das richtige Bild ausgewählt hast und dass es sich auf dem aktiven Arbeitsblatt befindet.


Alternative Methoden

Falls du keine VBA-Lösungen verwenden möchtest, kannst du die Position eines Bildes auch manuell ermitteln:

  1. Wähle das Bild aus: Klicke auf das Bild in deinem Excel-Dokument.
  2. Formatiere das Bild: Gehe zu „Format“ und nutze die Eigenschaften „Größe und Eigenschaften“, um die Position anzuzeigen.

Praktische Beispiele

  • Beispiel 1: Wenn du die Position eines Logos in deinem Bericht ermitteln möchtest, kannst du den oben genannten VBA-Code anpassen und den Namen deines Logos verwenden.

  • Beispiel 2: Um die Top und Left Eigenschaften mehrerer Bilder in einem Arbeitsblatt zu ermitteln, kannst du eine Schleife verwenden:

    Sub AlleBildPositionenErmitteln()
       Dim Bild As Shape
       For Each Bild In ActiveSheet.Shapes
           MsgBox Bild.Name & ": Top = " & Bild.Top & ", Left = " & Bild.Left
       Next Bild
    End Sub

Tipps für Profis

  • Nutze die TopLeftCell und BottomRightCell Eigenschaften, um die genaue Zellposition eines Bildes zu ermitteln:

    Set MeinBild = ActiveSheet.Shapes("Picture 1")
    MsgBox "Obere linke Zelle: " & MeinBild.TopLeftCell.Address & vbLf & "Untere rechte Zelle: " & MeinBild.BottomRightCell.Address
  • Wenn du die shape position vba in einem größeren Projekt verwendest, denke daran, die Bildnamen konsistent zu benennen, um Verwirrung zu vermeiden.


FAQ: Häufige Fragen

1. Wie kann ich die Position eines Bildes in einem bestimmten Arbeitsblatt ermitteln?
Du kannst das Arbeitsblatt in deinem VBA-Code angeben, indem du Worksheets("DeinBlattname") vor Shapes("Bildname") hinzufügst.

2. Was mache ich, wenn ich mehrere Bilder gleichzeitig bearbeiten möchte?
Verwende eine Schleife im VBA-Code, um durch alle Bilder im Arbeitsblatt zu iterieren und ihre Positionen zu ermitteln.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige