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 :

Tableaux Word ----> html


Sujet :

VBA Word

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut Tableaux Word ----> html
    Bonjour,
    je cherche une macro qui me transformerait (ou baliserait) un tableau word en html

    J'essaie de la faire mais je n'y arrive pas...

    Quelqu'un pourrait m'aider ??

    Merci

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    tiens regarde si le code suivant t'inspire et dis nous....

    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
    ' PErmet d'enlever les tabulation des cellule
    '
    Function NetCellule(st As String) As String
     Dim i As Integer
     Dim st2 As String
     st2 = ""
     
     For i = 1 To Len(st)
        If Asc(Mid(st, i, 1)) >= 32 Then
         st2 = st2 & Mid(st, i, 1)
        End If
     
     Next
     
     NetCellule = st2
    End Function
     
    Sub ExporteTableau()
        Dim t As Table ' T c'est mon tableau
        Dim r As Row
        Dim stTexte As String
     
       ' Dim c As Cell
        'A voir comment sélectionner le bon tableau...
        Set t = ActiveDocument.Tables(1) ' Je prend le 1° tableau du document
     
        stTexte = "<TABLE BORDER>"
        For Each r In t.Range.Rows
           stTexte = stTexte & "<TR>"
           For Each c In r.Range.Cells
             stTexte = stTexte & "<TD>" & NetCellule(c.Range.Text) & "</TD>"
           Next
           stTexte = stTexte & "</TR>" & Chr(13)
        Next
         stTexte = stTexte & "</TABLE>"
     
         Debug.Print stTexte
    End Sub

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    salut (encore toi...tu dors ici ??)

    J'ai essayer d'executer la macro, mais rien ne se passe (meme en selectionnant le tableau.

    j'ai du ratter qq chose ?

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    tu as bien regardé dans fenêtre exécution ... ?

    il faut au moins un tableau .. dans le document word actif...
    puis execute exporte tableau ... ( à la limite mode pas à pas , voir s'il te manque quelque chose... ?

  5. #5
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    Salut et merci,

    il ne me fait rien du tout (pourtant en mode pas a pas, il ne m'indique pas d'erreur)

    Je ne pige pas...

    merci quand meme

    Je sais que ca doit etre chiant un debutant comme moi...lol

    par contre j'ai reussi a faire la plupart de mes balises HTML dans les texte (pour hier soir, si tu te souviens)

    ca marche au poil...

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    je sais pas cela viens peu-être de la maniére dont on été créé tes tableaux?... ceux dont je parle sont créé par la commande insérer tableau de word.. et sont des objets "tables"... tu peu vérifier si ton document en contient , dans la fenêtre exécution de vba en tapant...:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ?activedocument.Tables.Count
    ...? sinon pour le moment je ne vois pas pourquoi cela ne fonctionne pas chez toi.. ?

  7. #7
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    ouaip, j'ai la reponse 1 (dans la fenetre d'exe)

    et effectivement, j'ai bien le code qui s'affiche dans cette fenetre, mais pas dans mon doc), as tu une methode pour que ca remplace le tableau dans la page ?

    je suis vraiment desole

  8. #8
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    comment as tu fais ... pour le reste , tu ne crée pas un nouveau document, tu fais tous dans le fichier initial ? ... cela ne t'engendre pas des problémes.. ?

    bon sinon pour écrire dans fichier word ... tu peu modifier le code ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ...
         stTexte = stTexte & "</TABLE>"
         Debug.Print stTexte
         t.Select
         t.Delete
         Selection.TypeText Text:=stTexte
    ...
    .. Alors finalement hier tu as utilisé qu'elle méthode ?

  9. #9
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    c'etait de ma faute... (il etait surement pas en "inserer tableau"), c'est bizarre...

    mais en en faisant un nouveau avec la commande inserer tableau ca roule.

    Sinon, ouai effectivement, le tableau est dans ma page et je voudrais le remplacer par le code

  10. #10
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    Sinon, tu est un Top BON !

    ca marche au poil avec le code que tu m'a donné...je te RE RE RE merci

    @++ et bonne nuit...p'tete a demin ?

    byebye

Discussions similaires

  1. Tableaux WORD vers HTML
    Par luxmen dans le forum VBA Word
    Réponses: 15
    Dernier message: 02/02/2009, 12h01
  2. Conversion WORD vers HTML V4
    Par elitost dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 13/09/2005, 16h24
  3. [word et html]insertion d'un pied de page.....
    Par Nadine dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 23/06/2005, 12h04
  4. Comment faire un retour a la ligne dans un tableaux Word
    Par alexmorel dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 17/06/2004, 09h31
  5. [OPENOFFICE] Transformation des tableaux OOo en HTML
    Par GrandFather dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 15/05/2004, 18h00

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