Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/12/2010, 20h37   #1
Invité de passage
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 2
Points : 2
Par défaut Dimensionner tableau word à l'aide d'une macro

Bonjour,

je souhaite dimensionner mes tableaux sous word à l'aide d'une petite macro. J'ai récuperer des idées sur les autres tutos mais je n'arrive pas à définir la largeur de chacune des colonnes.
Code :
1
2
3
4
5
6
7
8
9
 
Sub tabldim()
With ActiveDocument.Tables(1)
Selection.Columns(1).PreferredWidth = CentimetersToPoints(1)
End With
With ActiveDocument.Tables(1)
Selection.Columns(2).PreferredWidth = CentimetersToPoints(2)
End With
End sub
Si je souhaite dimensionner la deuxieme colonne du tableau, ca ne marche pas.

Il doit avoir une ligne de code qui permet de faire cette opération de maniere facile.

Merci pour votre aide
yannick113 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2010, 20h47   #2
Modérateur
 
Homme Christophe CHAPAT
Spécialiste progiciel
Inscription : février 2010
Messages : 983
Détails du profil
Informations personnelles :
Nom : Homme Christophe CHAPAT
Âge : 25
Localisation : France, Haute Loire (Auvergne)

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

Informations forums :
Inscription : février 2010
Messages : 983
Points : 1 590
Points : 1 590
Envoyer un message via MSN à carden752
Bonjour,

n'est-ce pas tout simplement parce que ton tableau a une largeur fixe déjà?
Code :
ActiveDocument.Tables(1).PreferredWidth
Regarde aussi si tu as bien défini une taille en points et pas pourcentage
Code :
ActiveDocument.Tables(1).PreferredWidthType
__________________
Cordialement,
Christophe

Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche
carden752 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2010, 21h55   #3
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 315
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

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

Informations forums :
Inscription : février 2006
Messages : 17 315
Points : 29 213
Points : 29 213
Salut,

Le premier problème est que tu n'adresses pas une colonne.

Code :
Selection.Columns(2).PreferredWidth = CentimetersToPoints(2)
tu reçois un message stipulant que le menbre de la collection n'existe pas.

Code :
ActiveDocument.Tables(1).Columns(2).PreferredWidth = CentimetersToPoints(2)
Dans ce morceau de code, tu commence par adresser une table pour ensuite travailler avec une sélection.
Code :
1
2
3
With ActiveDocument.Tables(1)
Selection.Columns(1).PreferredWidth = CentimetersToPoints(1)
End With
Ton code devrait ressembler à ça :

Code :
1
2
3
With ActiveDocument.Tables(1)
    .Columns(1).PreferredWidth = CentimetersToPoints(1)
End With
En Fait, With introduit une possibilité d'utiliser plusieurs méthodes ou propriétés pour un même objet.

Code :
1
2
3
4
5
6
With monobjet
   .propriété1
   .propriété2
   .Methode1
   .methode2
End With
Et est identique à :
Code :
1
2
3
4
5
 
   monobjet.propriété1
   monobjet.propriété2
   monobjet.Methode1
   monobjet.methode2
donc ton code devrait devenir :

Code :
1
2
3
4
5
 
With ActiveDocument.Tables(1)
   .Columns(1).PreferredWidth = CentimetersToPoints(1)
   .Columns(2).PreferredWidth = CentimetersToPoints(2)
End With
__________________
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 !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2010, 22h03   #4
Modérateur
 
Homme Christophe CHAPAT
Spécialiste progiciel
Inscription : février 2010
Messages : 983
Détails du profil
Informations personnelles :
Nom : Homme Christophe CHAPAT
Âge : 25
Localisation : France, Haute Loire (Auvergne)

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

Informations forums :
Inscription : février 2010
Messages : 983
Points : 1 590
Points : 1 590
Envoyer un message via MSN à carden752
Bonjour Heureux-Oli,

Bien vu ce bout de code m'avait echappe!!
__________________
Cordialement,
Christophe

Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche
carden752 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2010, 11h14   #5
Invité de passage
 
Inscription : mars 2010
Messages : 39
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 39
Points : 2
Points : 2
Bonjour,

Merci pour votre aide, je viens de m'apercevoir que la macro de marche pas car j'avais pas tenu compte que mes tableaux contenaient du texte.

yannick113 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h27.


 
 
 
 
Partenaires

Hébergement Web