Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1192to1196
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

Bilder in Bereichen selektieren

Bilder in Bereichen selektieren
Lemmi
Hallo zusammen,
Ich möchte diese Makro etwas erweitenern bzw. den Bereich einschränken in dem es arbeiten soll!
Sub Alle_Bilder_markieren()
ActiveSheet.Shapes.SelectAll
End Sub
Das neue Makro A soll nur in einem Bereich von A6:D3000 alle Bilder markieren
Das neue Makro B soll alles ab Zeile A6 markieren!
Wie sieht hier das Makro aus?
Gruß
Lemmi
Bild in Zeile - Ähnlicher Thread im Archiv
27.12.2010 00:21:25
NoNet
Hallo Lemmi,
einen Thread zu einem ähnlichen Thema mit Lösungsvorschlag findest Du hier :
https://www.herber.de/forum/archiv/1164to1168/t1167457.htm
Evtl. kannst Du die Function BildInZeile(lngZeile As Long) As Boolean auch selbst anpassen ?
Per EXCEL-Definition ist die linke obere Ecke eines Shapes (Grafik) ausschlaggebend dafür, ob ein Bild innerhalb eines Bereiches/Zeile/Spalte/Zelle liegt oder nicht, meine Funktion prüft jedoch, ob Das Bild den Bereich "berührt" (genauer: überschneidet).
Viel Erfolg,
Gruß NoNet
Anzeige
AW: Bilder in Bereichen selektieren
27.12.2010 17:08:53
Beverly
Hi Lemmi,
für Aufgabe 1:
Sub ShapesMarkieren1()
Dim shShape As Shape
Dim loShapes As Long
ReDim arrShapes(0)
For Each shShape In ActiveSheet.Shapes
If shShape.Top > Rows(6).Top And shShape.BottomRightCell.Left  "" Then
ActiveSheet.Shapes.Range(arrShapes()).Select
End If
End Sub
für Aufgabe 2:
Sub ShapesMarkieren2()
Dim shShape As Shape
Dim loShapes As Long
ReDim arrShapes(0)
For Each shShape In ActiveSheet.Shapes
If shShape.Top > Rows(6).Top Then
ReDim Preserve arrShapes(0 To loShapes)
arrShapes(loShapes) = shShape.Name
loShapes = loShapes + 1
End If
Next shShape
If arrShapes(UBound(arrShapes()))  "" Then
ActiveSheet.Shapes.Range(arrShapes()).Select
End If
End Sub



Anzeige
AW: Bilder in Bereichen selektieren
27.12.2010 21:04:19
Lemmi
Hallo Karin,
vielen Dank für Deinen Code!
Ich habe erst einmal den zweiten Code ausprobiert! Hier gibt es eine Fehlermeldung!
in der Zeile:
......
ActiveSheet.Shapes.Range(arrShapes()).Select
End If
End Sub
Er meldet Laufzeitfehler; Anwendungs- oder objekdefiniertet Fehler!
Mache ich noch etwas flasch?
Gruß
Lemmi
AW: Bilder in Bereichen selektieren
28.12.2010 08:55:00
Beverly
Hi Lemmi,
kann ich leider nicht nachvollziehen - weder mir Excel2002 noch mit Excel2007
https://www.herber.de/bbs/user/72820.xls


Anzeige
AW: Bilder in Bereichen selektieren
28.12.2010 19:07:21
Lemmi
Hallo Karin,
jetzt sehe ich auch "meinen" Fehler. Ich habe zu ungenau mein Problem beschrieben!
Du makiert Ovale und Rechtecke. Ich habe möchte aber Bilder und Opjekte markieren!
Soweit ich das bis jetzt herausgefunden habe, kann man etweder Bilder oder Objekte markieren aber nicht beides.
Wäre es möglich das Du das Makro noch anpassen könntest?
Ich möchte auf jeden Fall alle Objekte markieren können. Wenn es nicht zu viel arbeit macht würde ich auch gerne noch alle Bilder markieren(neues Makro).
(Arbeitsbereich... ab Zeile 6 soll beiben:
Vielen Dank..... schon einmal im Voraus! Danke!
Gruß
Lemmi
Anzeige
AW: Bilder in Bereichen selektieren
28.12.2010 19:31:00
Beverly
Hi Lemmi,
was für Objekte?


AW: Bilder in Bereichen selektieren
28.12.2010 19:49:04
Lemmi
Hallo Karin,
ich habe Objekte über Excel/ Einfügen/ Objekte eingefügt!
Gruß
Lemmi
AW: Bilder in Bereichen selektieren
29.12.2010 00:28:02
Beverly
Hi Lemmi,
beide Typen lassen sich in Excel2007 leider nicht gemeinsam markieren - du musst sie also getrennt markieren und für die Objekte einen anderen Code verwenden
Sub ObjekteMarkieren()
Dim oobObjekt As OLEObject
Dim lngObjekte As Long
Dim bytTyp As Byte
ReDim arrObjekte(0)
For Each oobObjekt In ActiveSheet.OLEObjects
If oobObjekt.Top > Rows(6).Top And oobObjekt.BottomRightCell.Left  "" Then
ActiveSheet.Shapes.Range(arrObjekte()).Select
End If
End Sub

als für die Bilder:
Sub BilderMarkieren()
Dim shShape As Shape
Dim lngBilder As Long
Dim bytTyp As Byte
ReDim arrBilder(0)
For Each shShape In ActiveSheet.Shapes
On Error Resume Next
bytTyp = shShape.DrawingObject.OLEType
On Error GoTo 0
If bytTyp = 0 Then
If shShape.Top > Rows(6).Top And shShape.BottomRightCell.Left  "" Then
ActiveSheet.Shapes.Range(arrBilder()).Select
End If
End Sub



Anzeige
AW: Bilder in Bereichen selektieren
29.12.2010 12:51:42
Lemmi
Hallo Karin,
das Makro für die Objekte passt sehr gut!
Vielen Dank!
Die Bildermarkierung funktioniert leider nicht.... Ich habe schon einiges versucht(Wort Bild durch Picture ersetzt)
Der Bereichsname heist "Picture X" kann es daran liegen?
Anders gefragt: Wie finde ich heraus wie ich das Bild ansprechen kann.
Gruß
Egbert
AW: Bilder in Bereichen selektieren
29.12.2010 13:13:04
Beverly
Hi Egbert,
vielleicht solltest du mal deine Mappe mit ein paar wenigen Objekten/Bildern hochladen - da der Code bei mir funktioniert kann ich nichts dazu sagen. Vielleicht könntest du auch genauer beschreiben, was nicht funktioniert.


Anzeige
AW: Bilder in Bereichen selektieren
29.12.2010 15:12:23
Beverly
Hi Eduard,
der Code ist doch so geschrieben, dass die rechte untere Ecke des Bildes links von Spalte E liegt - das ist in deinem Beispiel nicht der Fall, deshalb wird es auch nicht ausgewählt. Markiere das Bild und du siehst, dass es bis in Spalte H reicht.


AW: Bilder in Bereichen selektieren
29.12.2010 15:25:28
Lemmi
Hallo Karin,
das wars! Ich habe den Bereich erweitert und kann jetzt alles selektrieren!
Vielen vielen Dank!
Bis zum nächsten Jahr!
Gruß
Lemmi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige