(résolu) comparaison valeurs tableau word et suppression lignes avant impression

jozerebel

XLDnaute Occasionnel
bonjour,

J ai un tableau word avec des valeurs en premiere colonne. Des doublons sont presents dans cette colonne. Je souhaiterais supprimer les lignes qui contiennent des doublons. Je precise que je ne peux pas exporter vers excel.
une idee de code?

D avance merci.
 
Dernière édition:

homepyrof53

XLDnaute Occasionnel
Re : comparaison valeurs tableau word et suppression lignes

Bonjour,

Voici le code

Code:
Sub essai()
Dim tab_cle
Set tab_cle = CreateObject("scripting.dictionary")
If Selection.Information(wdWithInTable) = True Then
    Selection.Tables(1).Select
    Set tableau = Selection.Range
    nbligne = Selection.Tables(1).Rows.Count
    b = 1
    While b <= Selection.Tables(1).Rows.Count
        txt = Selection.Tables(1).Cell(b, 1)
        txt = Mid(txt, 1, Len(txt) - 1)
        If tab_cle.Exists(txt) Then
            Selection.Tables(1).Rows(b).Delete
        Else
            tab_cle(txt) = 1
            b = b + 1
        End If
    Wend
End If
End Sub
 

jozerebel

XLDnaute Occasionnel
Re : comparaison valeurs tableau word et suppression lignes

Salut Homepyrof!

oulà, j'avais pas vu que j'avais eu une réponse à ce topic...

Désolé.

Donc merci pour ta réponse.

Par contre, la macro fonctionne qd il n'y a qu'un tableau dans le doc word. Si du texte/image est présent avant le tableau, la macro ne fonctionne plus...

Une idée de correction?

D'avance merci!
 

jozerebel

XLDnaute Occasionnel
Re : comparaison valeurs tableau word et suppression lignes

Salut Homepyrof53!

Merci pour ta réponse!

c'est ok pour moi!

Sais-tu comment je pourrais faire pour lancer cette macro avant impression?

J'ai cherché un peu sur le fofo et sur G**gle, mais j'avoue être dépassé par les modules de classe et tt le reste.

D'avance merci pour ton aide!

Bon dimanche.
 

homepyrof53

XLDnaute Occasionnel
Re : comparaison valeurs tableau word et suppression lignes avant impression

Bonjour,

Voici la macro qui va parcourir automatiquement tous les tableaux du fichier

Code:
Sub FormatageTableau()
Dim ligne As Object
Dim tab_cle
nb_tab = ActiveDocument.Tables.Count
For num_tab = 1 To nb_tab
    Set tab_cle = CreateObject("scripting.dictionary")
    ActiveDocument.Tables(num_tab).Select
    Set tableau = Selection.Range
    nbligne = Selection.Tables(1).Rows.Count
    b = 1
    While b <= Selection.Tables(1).Rows.Count
        txt = Selection.Tables(1).Cell(b, 1)
        txt = Mid(txt, 1, Len(txt) - 1)
        If tab_cle.Exists(txt) Then
            Selection.Tables(1).Rows(b).Delete
        Else
            tab_cle(txt) = 1
            b = b + 1
        End If
    Wend
    Set tab_cle = Nothing
Next
End Sub

Et tu ajoutes les macros de Gelinotte pour l'exécution à l'impression
 

Discussions similaires

Réponses
15
Affichages
844
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 453
Messages
2 088 553
Membres
103 881
dernier inscrit
malbousquet