J'ai une macro PowerPoint qui prend des photos et les ajoute à un diaporama ouvert. Lorsque je tente de lancer la macro après avoir cliqué sur la liste des diapositives sur la gauche de l'écran (ce qui provoque une barre Horizonal clignote solide sous la dernière diapositive), je reçois l'erreur:Forme membre inconnu: demande non valide. Pour sélectionner une forme, sa vue doit être active
Runtime error '-2147188160 (80042240)':
Shape unknown member: invalid request. To select a shape, its view must be active
je me suis dit que c'était parce que je n'ai pas un objet valide sélectionné alors j'ai ajouté une déclaration de débogage pour déterminer ce que la sélection était:
If ActiveWindow.Selection.Type = 0 Then
MsgBox "0"
End If
If ActiveWindow.Selection.Type = 1 Then
MsgBox "1"
End If
If ActiveWindow.Selection.Type = 2 Then
MsgBox "2"
End If
If ActiveWindow.Selection.Type = 3 Then
MsgBox "3"
End If
la première image pour obtenir ajoutée provoque une 1
à afficher et l'image est ajoutée correctement mais les affichages d'erreur et les arrêts de macros. De façon gênante, quand j'essaie de l'exécuter en mode débogage, cela fonctionne à chaque fois. Je ne peux que supposer que je suis en quelque sorte en train de régler manuellement le problème par accident quand je le débogue.
L'affirmation selon laquelle la cause du problème:
ActiveWindow.Selection.SlideRange.Shapes.AddPicture(//file information//).Select
//the line after
ActiveWindow.Selection.ShapeRange.ZOrder msoSendToBack
pourriez-vous fournir plus de votre code? Pourquoi avez-vous besoin de sélectionner la forme après l'avoir ajoutée - est-ce nécessaire? –
@KazJaw En savoir plus. La plupart de mon code est "fluff". Je ne suis honnêtement pas sûr si j'ai besoin de le sélectionner. Je ne l'ai pas écrit à l'origine et je sais très peu de choses sur VBA. Je suis certainement prêt à le réécrire d'une manière différente si cela va résoudre le problème – Daniel