Question MS Word: Comment supprimer toutes les tables?


Je dois exécuter le programme de vérification de texte sur mon document (grammaire), et je dois supprimer toutes les tables.

Comment puis-je le faire?

je trouve https://www.extendoffice.com/documents/word/1208-word-remove-delete-all-tables.html , dans lequel vous pouvez utiliser VBA

Sub Removetables ()
Dim oTable As Table
Each oTable In ActiveDocument.Tables
oTable.Delete
Next oTable
End Sub

mais Each oTable In ActiveDocument.Tables me donne une erreur quand je le lance. Je suis sur MS Word 2013 sur Mac


4
2018-05-23 06:29


origine


Vous pouvez sélectionner n'importe quelle table, puis accéder à l'onglet Mise en page sous Outils de table, puis cliquer sur Convertir en texte. Cela supprimera les tables et en fera un texte brut. - iSR5


Réponses:


Vous manquez le For dans For Each:

Sub Removetables ()
    Dim oTable As Table
    For Each oTable In ActiveDocument.Tables
    oTable.Delete
    Next oTable
End Sub

11
2018-05-23 06:38



Je ne pensais pas que cela pourrait être aussi simple. Je ne suis pas familier avec sytax VBA du tout. - cqcn1991
Vous souhaiterez peut-être parcourir les tables en arrière, supprimant de la fin. - Lobachevsky
@Lobachevsky, pourquoi est-ce? Est-ce que le For Each ne va pas parcourir même si on est supprimé? Ou fait-il une renumérotation bizarre ou quelque chose? - Jake
@Jake Pages ré-arrangement ... (je suppose) ... Word aime exprimer son la créativité avec le réarrangement de l'espace (images qui changent de page, etc.):). À partir de haut vous permettez lui (Word) le faire plus de fois ... (n * (n-1) / 2) avec n des tables, au lieu de n. - Hastur