Überprüfung eines bestimmten Shapes

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Überprüfung eines bestimmten Shapes
von: Michael Rapp
Geschrieben am: 29.09.2003 15:29:21

Hallo Excel Freunde,
wie kann ich überprüfen, ob ein Bild mit einem von mir vorher vergebenen Namen vorhanden ist. Nur dann funktioniert der folgende Befehl (Start des Selektionsstiftes aus der Gafikleiste). Hier mein umständlicher Code, wo ich das Problem mit einer Fehlermeldung umschiffe?

Danke für Eure Hilfe
Michael



Sub M_StartWhiteOut()
'Makro erstellt 28.9.2003
'startet den Selektionsstift aus der Grafikleiste
Dim shpPlan As Shape
Dim strMsg1 As String
Dim strMsg2 As String
    On Error Resume Next
    strMsg1 = Sheet27.Range("AW318")
    strMsg2 = Sheet27.Range("AW319")
    Set shpPlan = Sheet16.Shapes("FS_Plan")
    
    If Err.Number = 0 Then GoTo WhiteOut                'prüfen, ob ein Plan vorhanden ist
    MsgBox strMsg1 & Chr(13) & strMsg2, vbOKOnly        'wenn nicht vorhanden, Fehlermeldung und Abbruch
    Sheet16.Range("CM28").Select
    Exit Sub
    
WhiteOut:
    shpPlan.Select                                       Plan vorhanden, muß gewählt sein
    Application.CommandBars("Picture").FindControl(, 2827, , , True).Execute ' Start der Siftfunktion
  
End Sub

Bild


Betrifft: AW: Überprüfung eines bestimmten Shapes
von: Hajo_Zi
Geschrieben am: 29.09.2003 16:22:10

Hallo Michael

lasse eine Schleife drüber laufen und Prüf den namen nach folgendem Prinzip.

Sub Test()
    For InI = ActiveSheet.Shapes.Count To 1 Step -1
       If Left(ActiveSheet.Shapes(InI).Name, 3) = "Pic" Then
           ActiveSheet.Shapes(InI).Delete
       End If
    Next
End Sub




Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

Zurzeit gibt es wieder Probleme mit der E-Mail Benachrichtigung.

Ich bekomme Mails zu Beiträgen an denen ich nicht beteiligt bin und zusätzlich noch Mails zu meinen eigenen Beiträgen.
Das Problem mit den eigenen Benachrichtigung kann gelöst werden durch Lösche und Neuanmelden. Dieses möchte ich aber nicht jeden Tag machen.
Um dieses Problem erstmal zu beseitigen habe ich die automatische Mailbenachrichtigung abgeschaltet.
Aus diesem Grunde ist es dem Zufall überlassen ob auf Rückfragen Antworten von mir kommen.


http://home.media-n.de/ziplies/



Bild


Betrifft: AW: Überprüfung eines bestimmten Shapes
von: Michael Rapp
Geschrieben am: 29.09.2003 21:34:54

Hallo Hajo,

Volltreffer! Funktioniert blendend - vielen Dank. Kannst du mir erklären, warum das
.count 1 Step -1 heißt, also bei eins anfangen und dann Auswahl um -1 (???)verändern?

Gruß
Michael

Ich wende den Code so an:


Sub M_PlanImport()
'Deklarationen
For intI = ActiveSheet.Shapes.Count To 1 Step -1
       If left(ActiveSheet.Shapes(intI).name, 7) = "FS_Plan" Then     'prüfen, ob ein Plan vorhanden ist
           intAnswer = MsgBox(strMessage4, vbYesNo + vbCritical + vbDefaultButton2, strBoxHead)
           If intAnswer = 7 Then Exit Sub
           ActiveSheet.Shapes("FS_Plan").Delete       'löscht die Grafik mit dem Namen "FS_Plan"
       End If
    Next
'weiterer Code
End Sub



Bild


Betrifft: AW: Überprüfung eines bestimmten Shapes
von: Hajo_Zi
Geschrieben am: 29.09.2003 22:17:46

Hallo Michael

.count Anzahl der Shapes, Step -1 Die schleife läuft vom letzten zum ersten, da ein Element gelöscht wird und ansonsten kommt ein Laufzeitfehler.



Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

http://home.media-n.de/ziplies/



Bild


Betrifft: AW: Überprüfung eines bestimmten Shapes
von: Michael Rapp
Geschrieben am: 29.09.2003 22:46:37

Hallo Hajo,

jetzt habe ich es verstanden. Danke!

Gruß
Michael


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Überprüfung eines bestimmten Shapes"