[VBA] Code pour modifié format du texte dans zone de texte
Résolu
Floki72450
Messages postés
34
Date d'inscription
Statut
Membre
Dernière intervention
-
Floki72450 Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Floki72450 Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un soucis sur Word lors de l'utilisation de VBA.
J'ai créé une macro VBA permettant de mettre à jour les zones de textes par l'ajout des propriété du document suite à leur modification. Cela fonctionne bien et tout ce met à jour, mais les formats du texte ne sont pas conservés ?!?
Ma question est donc : Comment forcer le changement du format d'une zone de texte par des lignes en code VBA ?
Dans mon document, il y a plusiers zones de texte, mais toutes n'ont pas un format identique, je voudrais donc qu'elles soient modifiées chacune avec un format particulier, hors comment savoir "l'identifiant" d'une zone de texte, afin de lui attribuer le bon format ?
Exemple :
- La première zone de texte ne doit pas être modifiée, car rien ne change dedans.
- le texte de la deuxième zone de texte doit être taille 20, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de la deuxième zone de texte doit être taille 22, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de la deuxième zone de texte doit être taille 24, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de mon pied de page (qui se met à jour aussi avec les propriétés du document) doit être taille 9, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
Ce que je souhaite est-il réalisable ?
Lien pour obtenir le fichier : http://www.cjoint.com/c/FBciqpNRv10
PS : Dans le fichier joint, si vous modifier le commentaire dans les propriétés du document, et en cliquant sur la barre tout en haut de la première page, cela met à jour les donnée des zones de texte de la page. Vous verrez alors que les formats ne sont par respectés.
Merci par avance de votre aide
Cordialement
Floki72450
J'ai un soucis sur Word lors de l'utilisation de VBA.
J'ai créé une macro VBA permettant de mettre à jour les zones de textes par l'ajout des propriété du document suite à leur modification. Cela fonctionne bien et tout ce met à jour, mais les formats du texte ne sont pas conservés ?!?
Ma question est donc : Comment forcer le changement du format d'une zone de texte par des lignes en code VBA ?
Dans mon document, il y a plusiers zones de texte, mais toutes n'ont pas un format identique, je voudrais donc qu'elles soient modifiées chacune avec un format particulier, hors comment savoir "l'identifiant" d'une zone de texte, afin de lui attribuer le bon format ?
Exemple :
- La première zone de texte ne doit pas être modifiée, car rien ne change dedans.
- le texte de la deuxième zone de texte doit être taille 20, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de la deuxième zone de texte doit être taille 22, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de la deuxième zone de texte doit être taille 24, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
- le texte de mon pied de page (qui se met à jour aussi avec les propriétés du document) doit être taille 9, en Franklin Gothic Medium, et avec des ombre (sur le texte, pas la zone de texte)
Ce que je souhaite est-il réalisable ?
Lien pour obtenir le fichier : http://www.cjoint.com/c/FBciqpNRv10
PS : Dans le fichier joint, si vous modifier le commentaire dans les propriétés du document, et en cliquant sur la barre tout en haut de la première page, cela met à jour les donnée des zones de texte de la page. Vous verrez alors que les formats ne sont par respectés.
Merci par avance de votre aide
Cordialement
Floki72450
A voir également:
- Vba format texte
- Format epub - Guide
- Format factory - Télécharger - Conversion & Codecs
- Hp usb disk storage format tool - Télécharger - Stockage
- Format apfs - Guide
- [Excel VBA] Formater une cellule en texte ✓ - Forum VB / VBA
1 réponse
Bonjour,
Voici un exemple a adapter à la configuration. J'ai mis une MsgBox pour connaitre le nom des shapes. Ensuite je me suis amusé à modifier une shape avec un peu de fantaisie :-)
Voici un exemple a adapter à la configuration. J'ai mis une MsgBox pour connaitre le nom des shapes. Ensuite je me suis amusé à modifier une shape avec un peu de fantaisie :-)
Private Sub CommandButton1_Click() Dim oField As Field Dim oSection As Section Dim oHeader As HeaderFooter Dim oFooter As HeaderFooter Dim oSh As Shape For Each oSection In ActiveDocument.Sections For Each oFooter In oSection.Footers If oFooter.Exists Then For Each oField In oFooter.Range.Fields oField.Update Next oField End If Next oFooter For Each oHeader In oSection.Headers If oHeader.Exists Then For Each oField In oHeader.Range.Fields oField.Update Next oField End If Next oHeader Next oSection 'Boucle sur tous les shapes du document For Each oSh In ActiveDocument.Shapes 'Selection du Shapes oSh.Select MsgBox oSh.Name ' pour connaitre le nom des shapes If oSh.Name = "Rectangle 15" Then 'exemple a adapter oSh.Select With Selection .Font.Size = 22 .Font.Name = "Franklin Gothic Medium" .Font.Bold = True .Font.Color = wdColorRed End With End If 'Mise à jour des champs Selection.Fields.Update Next oSh For Each champ In ActiveDocument.Range.Fields champ.Update Next champ ActiveDocument.PrintPreview ActiveDocument.ClosePrintPreview ActiveDocument.PrintPreview ActiveDocument.ClosePrintPreview End Sub
Tout d'abord un grand MERCI à toi, cela m'a permis de beaucoup avancer dans mon projet ! J'ai donc réussi à faire la mise en format des zones de textes que je voulais, taille, couleur, police, j'ai même rajouter le fait d'avoir une police ombrée ! Donc merci
Cependant : J'aimerai faire quelques lignes de code pour mettre en forme mes pieds de pages avec ces propriétés :
.Font.Size = 9
.Font.Name = "Franklin Gothic Medium"
.Font.Bold = True
.Font.Color = wdColorBlack
J'ai tenter d'utiliser les premières lignes de codes qui permettent de mettre à jour les champs des pieds de pages, mais je n'arrive pas à leur insérer une mise en format spéciale...
Peut tu m'aider ?
Merci d'avance :)
Au passage, voici mon code VBA dans l'état actuel et au point (manque la mise en format des pieds de pages...) :
Voilà
@+