Danke
20.11.2007 23:04:50
Jürgen
Hallo K.Rola,
Danke für deine Lösung.
Ich habe sie getestet und sie funktioniert.
Hatte mich inzwischen selbst beigemacht, eine Lösung zu finden, da ich noch eine Bereichsbegrenzung brauchte und das bei meiner Fragestellung nicht mit angegeben hatte.
Außerdem läuft das Modul innerhalb einer UF. Die Var Zeile und Spalte hole ich mir dabei aus
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Zeile = Target.Row: Spalte = Target.Column
End Sub
Nun denn, sie ist etwas holprig und nicht so elegant, wie deine Lösung, funktioniert aber auch.
Sub Sh_Position()
Dim Sh As Shape, rng As Range
Dim OZWert%, UZWert%, LSWert%, RSWert%
Set rng = Range("A8:Z30")
OZWert = 5000: UZWert = 0: LSWert = 500: RSWert = 1
For Each Sh In ActiveSheet.Shapes 'vorhandene Shapes
On Error Resume Next
If Not Intersect(Sh.TopLeftCell, rng) Is Nothing Then
Sh.TopLeftCell.Select
If OZWert > Zeile Then OZWert = Zeile
If LSWert > Spalte Then LSWert = Spalte
End If
Next Sh
For Each Sh In ActiveSheet.Shapes 'vorhandene Shapes
On Error Resume Next
If Not Intersect(Sh.BottomRightCell, rng) Is Nothing Then
Sh.BottomRightCell.Select
If UZWert
If RSWert
End If
Next Sh
Range(Cells(OZWert, LSWert), Cells(UZWert, RSWert)).Select
End Sub
Werde mal sehen, ob ich deine Lösung entsprechend umgestellt kriege.
Gruß
Jürgen