IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

[VBA]Suppression de tous les tableaux d'un document word


Sujet :

VBA Word

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut [VBA]Suppression de tous les tableaux d'un document word
    Bonjour je suis actuellement bloqué sur le problème suivant :

    Je cherche a faire une macro qui va supprimer tous les tableaux de tous les documents word d'un répertoire .


    J'ai trouver comment parcourir les fichiers d'un répertoire ,je bloque surtout sur la partie consistant a supprimer tous les tableaux d'un document du répertoire.

    Si quelqu'un pouvait me donner quelque pistes.


    . La partie qui supprime les tableaux de fonctionne pas et me sort une erreur de dépassement de capacité.

    Pourtant si j'isole ce code en l'adaptant pour un document word ouvert cela marche tres bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    del = ActiveDocument.Tables.Count
        For i = del To 1 Step -1
            ActiveDocument.Tables(i).Select
            ActiveDocument.Tables(i).Delete
        Next

    J'ai fais le code suivant pour l'instant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    Sub importLignesDocumentWord()
     
    Dim Fichier As String, Direction As String
    Dim wordApp As Word.Application
    Dim wordDoc As Word.Document
    Dim i As Byte
    Dim j As Integer
     
     
    Dim num As Integer
    Dim x As Integer
    Dim y As Integer
     
     
    x = 1
    y = 1
    j = 1
     
     
     
    '---------------------------------------------------------------------------------------
     
    Application.ScreenUpdating = False
     
    Direction = ThisWorkbook.Path
    Fichier = Dir(Direction & "\*.doc")
    Do While Fichier <> "" 'boucle sur tous les fichiers .doc du repertoire
     
    Set wordApp = CreateObject("Word.Application")
    wordApp.Visible = False
    Set wordDoc = wordApp.Documents.Open(Direction & "\" & Fichier) 'ouverture documents word
    j = j + 1
     
     
    del = ActiveDocument.Tables.Count
        For i = del To 1 Step -1
            wordDoc.Tables(i).Select
            wordDoc.Tables(i).Delete
        Next
     
     
     
     
    wordDoc.Close False 'fermeture documents word
    wordApp.Quit
    Set wordDoc = Nothing
    Set wordApp = Nothing
    Fichier = Dir
     
    Loop
    End Sub

    Merci d'avance

  2. #2
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For i = del To 1 Step -1
            wordApp.Tables(i).Select
            wordApp.Tables(i).Delete
        Next
    Essayez de remplacer WordApp par WordDoc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For i = del To 1 Step -1
            wordDoc.Tables(i).Select
            wordDoc.Tables(i).Delete
        Next
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci pour cette erreur que j'ai oublié de corriger avant de copier le code aussi. Par contre une fois cette coquille corrigé , j obtiens un erreur :
    " Erreur d’exécution 6 , dépassement de capacité " à la ligne

    For i = del To 1 Step -1

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,


    Peut-être plus simple ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub oli()
    Dim oTbl As Table
     
    For Each oTbl In ActiveDocument.Tables
    oTbl.Delete
    Next oTbl
     
    End Sub
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/02/2010, 17h13
  2. Parcourir en VBA tous les tableaux d'un doc word
    Par kluh dans le forum VBA Word
    Réponses: 1
    Dernier message: 12/03/2009, 11h21
  3. sélectionner tous les tableaux d'un document
    Par BernardT dans le forum Word
    Réponses: 2
    Dernier message: 03/08/2007, 22h19
  4. [VBA Excel] supprimer tous les onglets sauf un
    Par drinkmilk dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 09/11/2005, 18h11
  5. Suppression de tous les fichiers textes d'un répertoire
    Par Cathy dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 20/09/2005, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo