Code VBA Insertion titre
Résolu
CHARLYJACK
Messages postés
345
Date d'inscription
Statut
Membre
Dernière intervention
-
CHARLYJACK Messages postés 345 Date d'inscription Statut Membre Dernière intervention -
CHARLYJACK Messages postés 345 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voilà la situation je transfère des tcd de excel vers word,
j'ai trouvé des codes à droite et à gauche et ça fonctionne !
Par contre je souhaite ajouter un titre avant chaque tableau dans word
et là je bloque
Est ce qu'une âme charitable pourrait m'aider ?
voici un extrait de mon code ( je ne me suis pas encore exercé sur les boucles ):
merci
CHARLYJACK
Public Sub CopieDansWord()
Dim appWord As New Word.Application
Dim docWord As New Word.Document
Dim rng As Range
' Lance Word
Set appWord = New Word.Application
With appWord
.Visible = True
' Ajoute un nouveau document
Set docWord = .Documents.Add
.Activate
End With
With appWord.Selection
.PageSetup.Orientation = wdOrientLandscape
.PageSetup.LeftMargin = CentimetersToPoints(0.5)
.PageSetup.RightMargin = CentimetersToPoints(0.5)
.PageSetup.TopMargin = CentimetersToPoints(0.5)
.PageSetup.BottomMargin = CentimetersToPoints(0.5)
' Ajoute une ligne de titre et la met en forme
.TypeText Text:="Volumétrie Oberthur Perso 020"
.HomeKey Unit:=wdLine
.EndKey Unit:=wdLine, Extend:=wdExtend
.ParagraphFormat.Alignment = wdAlignParagraphCenter
.Font.Size = 18
With .Font
.Name = "Verdana"
.Size = 18
.Bold = True
.Italic = False
.SmallCaps = True
End With
' Copie le tableau Excel 018 dans le presse papier
Sheets("Ober Perso 020").Range("OBE1").CurrentRegion.Copy
' Colle le tableau dans Word avec liaison
.EndKey Unit:=wdLine
.TypeParagraph
.TypeParagraph
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, _
Placement:=wdInLine, DisplayAsIcon:=False
' Copie le tableau Excel 020 dans le presse papier
Sheets("Ober Perso 020").Range("OBE2").CurrentRegion.Copy
' Colle le tableau dans Word avec liaison
.EndKey Unit:=wdLine
.TypeParagraph
.TypeParagraph
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, _
Placement:=wdInLine, DisplayAsIcon:=False
With docWord
' Enregistrement du document Word dans le même dossier
' que le classeur Excel
.SaveAs ThisWorkbook.Path & "\Resultats_2010.doc", Allowsubstitutions:=True
End With
' Réinitialise l'objet
Set appWord = Nothing
End With
End Sub
Voilà la situation je transfère des tcd de excel vers word,
j'ai trouvé des codes à droite et à gauche et ça fonctionne !
Par contre je souhaite ajouter un titre avant chaque tableau dans word
et là je bloque
Est ce qu'une âme charitable pourrait m'aider ?
voici un extrait de mon code ( je ne me suis pas encore exercé sur les boucles ):
merci
CHARLYJACK
Public Sub CopieDansWord()
Dim appWord As New Word.Application
Dim docWord As New Word.Document
Dim rng As Range
' Lance Word
Set appWord = New Word.Application
With appWord
.Visible = True
' Ajoute un nouveau document
Set docWord = .Documents.Add
.Activate
End With
With appWord.Selection
.PageSetup.Orientation = wdOrientLandscape
.PageSetup.LeftMargin = CentimetersToPoints(0.5)
.PageSetup.RightMargin = CentimetersToPoints(0.5)
.PageSetup.TopMargin = CentimetersToPoints(0.5)
.PageSetup.BottomMargin = CentimetersToPoints(0.5)
' Ajoute une ligne de titre et la met en forme
.TypeText Text:="Volumétrie Oberthur Perso 020"
.HomeKey Unit:=wdLine
.EndKey Unit:=wdLine, Extend:=wdExtend
.ParagraphFormat.Alignment = wdAlignParagraphCenter
.Font.Size = 18
With .Font
.Name = "Verdana"
.Size = 18
.Bold = True
.Italic = False
.SmallCaps = True
End With
' Copie le tableau Excel 018 dans le presse papier
Sheets("Ober Perso 020").Range("OBE1").CurrentRegion.Copy
' Colle le tableau dans Word avec liaison
.EndKey Unit:=wdLine
.TypeParagraph
.TypeParagraph
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, _
Placement:=wdInLine, DisplayAsIcon:=False
' Copie le tableau Excel 020 dans le presse papier
Sheets("Ober Perso 020").Range("OBE2").CurrentRegion.Copy
' Colle le tableau dans Word avec liaison
.EndKey Unit:=wdLine
.TypeParagraph
.TypeParagraph
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, _
Placement:=wdInLine, DisplayAsIcon:=False
With docWord
' Enregistrement du document Word dans le même dossier
' que le classeur Excel
.SaveAs ThisWorkbook.Path & "\Resultats_2010.doc", Allowsubstitutions:=True
End With
' Réinitialise l'objet
Set appWord = Nothing
End With
End Sub
A voir également:
- Code VBA Insertion titre
- Code ascii - Guide
- Code puk bloqué - Guide
- Trouver un film sans le titre - Télécharger - Divers TV & Vidéo
- Code activation windows 10 - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
2 réponses
Bonsoir CHARLYJACK,
Puisque tu arrive à copier une partie de feuille dans le presse papier, tu peux certainement copier le contenu d'une variable aussi.
Une partie de ton code:
Une variable contenant un titre :
Puisque tu arrive à copier une partie de feuille dans le presse papier, tu peux certainement copier le contenu d'une variable aussi.
Une partie de ton code:
' Copie le tableau Excel 018 dans le presse papier Sheets("Ober Perso 020").Range("OBE1").CurrentRegion.Copy
Une variable contenant un titre :
varChaine = "Je suis un titre de tableau"
Bonsoir,
C'est quoi ton problème au juste ?
Parce que tu mets déjà un titre avec :
.TypeText Text:="Volumétrie Oberthur Perso 020"
Tu peux aussi remplacer le texte par le contenu d'une cellule (ou bien d'une variable) :
.TypeText Text:=[A1]
???
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
C'est quoi ton problème au juste ?
Parce que tu mets déjà un titre avec :
.TypeText Text:="Volumétrie Oberthur Perso 020"
Tu peux aussi remplacer le texte par le contenu d'une cellule (ou bien d'une variable) :
.TypeText Text:=[A1]
???
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Bonjour Eric,
Effectivement j'ai déjà un titre par contre ça bloquait quand je voulais enregistrer un second titre.
Mon second titre remplacait le premier
J'ai essayé la déclaration d'une variable mais j'ai échoué je dois encore travailler ça.
J'ai remplacé le texte par le contenu d'une cellule nommée, ça fonctionne bien.
Maintenant je vais travailler sur les boucles pour alléger mon code, mais ça c'est une autre histoire.
En tout cas un grand merci à vous pour vos réponses ou pour vos pistes qui m'aide à progresser.
Encore Merci
Charlyjack
Effectivement j'ai déjà un titre par contre ça bloquait quand je voulais enregistrer un second titre.
Mon second titre remplacait le premier
J'ai essayé la déclaration d'une variable mais j'ai échoué je dois encore travailler ça.
J'ai remplacé le texte par le contenu d'une cellule nommée, ça fonctionne bien.
Maintenant je vais travailler sur les boucles pour alléger mon code, mais ça c'est une autre histoire.
En tout cas un grand merci à vous pour vos réponses ou pour vos pistes qui m'aide à progresser.
Encore Merci
Charlyjack
j'ai essayé ça n'a pas marché !
je reprends des codes pour voir ce que j'ai mal fait.
en tout cas merci pour la piste