VBA - Word - Révisions

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 20 oct. 2004 à 10:39
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 21 oct. 2004 à 18:21
Rappel :
Révision = texte inséré ou supprimé dans un document Word et que Word met en évidence quand on clique sur "Suivi des modifications"

Je souhaite accepter toutes les modifications d'un document, excepté celles qui sont des suppressions.

    For i = 0 To ActiveDocument.Revisions.Count - 1
        
        If Selection.NextRevision(True).Type <> wdRevisionDelete Then
            Selection.Range.Revisions.AcceptAll
        End If

    Next


Et malheureusement, je n'y parviens pas.

Message d'erreur :
5852 L'objet demandé n'est pas disponible.

alors que l'objet Selection.NextRevision(True) est bien de Type Revision, et accepte la prorpiété Type.

J'arrive à parcourir et sélectionner toutes les révisions, mais pas à déceler leur Type.
Quelqu'un aurait-il une solution ?

D'avance merci.

Manu

4 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
20 oct. 2004 à 19:59
bonsoir Econs

tu peux tester :

Sub accepterRevisionsConditionnel()
Dim i As Integer

For i = ActiveDocument.Revisions.Count To 1 Step -1
If ActiveDocument.Revisions(i).Type <> wdRevisionDelete Then
ActiveDocument.Revisions(i).Accept
End If
Next

End Sub

bonne soirée
michelxld
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
21 oct. 2004 à 07:05
Hélas, j'ai déjà testé celà, et l'erreur que m'indique Word reste la même...
Bien tenté ! ;o)

Manu
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
21 oct. 2004 à 09:22
bonjour Manu

c'est curieux car chez moi cela fonctionne bien ( mais j'ai peut etre mal interprété ce que tu cherches à faire )

j'ai remarqué dans ta procedure que l'index ( i ) commençait à 0 : chez moi ( Word2002)quand je boucle sur les Revisions du document : l'index doit etre mis à 1 , sinon cela me renvoie un message d'erreur
sur le meme principe je dois boucler à rebours (Step -1) sinon j'ai le meme message d'erreur

je te souhaite une bonne journée
michel
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
21 oct. 2004 à 18:21
Je suis sous Word97. J'ai essayé de passer par l'enregistreur automatique de macro de Word, mais rien n'y fait.

Vu que çà fonctionne chez toi, il doit y avoir un bug quelque part chez moi.
Merci pour l'aide en tous cas.

Manu
0
Rejoignez-nous