2013-06-24 3 views
1

merci d'avance.Vérification de plusieurs formes dans Powerpoint VBA

J'ai 44 formes sur une diapositive (B01 - B44) que je veux vérifier pour voir si elles ne contiennent pas la lettre "A". Il y a d'autres formes que je veux exclure de la recherche. Je voudrais faire cela sans un tas de "et" s mais je suis un peu nouveau à VBA.

Quelque chose comme:

If ActivePresentation.Slides(2).Shapes("B##").TextFrame.TextRange.Text <> "A" Then MsgBox "No A's" 

Répondre

0

Vous pouvez faire cela dans une boucle:

Dim i as Long, a As Long 
Dim shp as Shape 
Dim pres as Pres: Set pres = ActivePresentation 

For i = 1 to 44 
    Set shp = pres.Slides(2).Shapes("B" & i) 
    If shp.TextFrame.TextRange.Text <> "A" Then 
     aCount = aCount+1 
    End If 
Next 

If aCount = 0 Then 
    MsgBox "No A's were found" 
Else: 
    MsgBox aCount & " A's were found" 
End If 

Note: Cette vérifie si le texte est "A", pas si elle contient la lettre "A".

+0

Cela a fonctionné SAUF que je seulement ce que le "alors" se produise si TOUTES les formes n'ont pas de A. Avez-vous une suggestion pour cela? Très apprécié! –

+0

Voir ma réponse révisée. Cela vous dira seulement * combien *, pas quelles formes les contiennent. Pour ce faire, vous devrez utiliser un tableau, un dictionnaire ou une collection. –

+0

EXCELLENT! Merci! –