Exporter une feuille Excel sur 1 Word [VB] - VB/VBA/VBS - Programmation
Marsh Posté le 29-07-2008 à 11:50:10
Bonjour
Si tu as besoin de recuperer des infos, pourquoi ne passes tu pas par une fusion ?
Sinon
pour atteindre un signet :
Selection.GoTo What:=wdGoToBookmark, Name:="NomDuSignet"
Pour aller avec ton code oublie pas le FichierWord devant, car tu pilote Word a partir d'excel.
FichierWord.Selection.GoTo What:=wdGoToBookmark, Name:="NomDuSignet"
apres tu n'as qu'a coller...
pour ouvrir un doc word
FichierWord.Documents.Open CheminDuDoc
J'ai repris le nom de ton objet Word créé donc ca marchera dans ton code.
Cordialement
Marsh Posté le 21-07-2008 à 17:27:52
Bonjour tout le monde,
j'espère avoir posté au bon endroit.
Pour résumer mon affaire, je suis stagiaire dans une boite et je dois coder un truc en Visual Basic (enfin le code derrière Excel, c'est bien du VB ?). C'est pour vous dire mon niveau en la matière; je suis à l'opposé de ce domaine, j'aime pas coder ou plutôt j'ai pas l'esprit codeur.
Enfin bref.
J'ai un fichier excel avec plusieurs onglets (correspondant en gros à une liste d'équipements informatiques et leurs prix suivant la commande du client), et je dois pouvoir, par simple clic sur un bouton sur un onglet, exporter une feuille d'Excel sur 1 doc Word deja créé avec des signets.
A noter que mon code actuel crée un doc mais n'en ouvre pas un deja crée.
Je comprend pas comment:
- ouvrir un doc word deja existant
- redimensionner des cellules copiées pour pas que ce soit le bazar sur la feuille word.
- créer des signets sur word et insérer les infos excel dedans.
:s
Merci d'avance.
Mon code actuel est le suivant:
Private Sub Create_document()
'copier coller une zone excel dans word
Sheets("Summary" ).Select
Range("A12:G49" ).Copy
'Range("A1,B4" ).Select
'Selection.Copy
'copier coller une zone excel dans word
Sheets("Summary" ).Select
Range("A50:G103" ).Copy
'Range("A1,B4" ).Select
'Selection.Copy
'definition
Dim FichierWord As Object
Set FichierWord = CreateObject("Word.Application" )
' Création document
FichierWord.Documents.Add
' Ecriture dans document
FichierWord.Selection.TypeText "hello world ! & chr(13) & test retour chariot & vbCrLf"
FichierWord.Selection.PasteSpecial
'déselectionne la zone qui est en mode copy
Application.CutCopyMode = False
' Sauvegarde
FichierWord.ActiveDocument.SaveAs "C:\Documents and Settings\Desktop\test.doc"
' Fermeture
'FichierWord.ActiveDocument.Close
'Set FichierWord = Nothing
'Ouverture
FichierWord.WindowState = wdWindowStateMaximize
FichierWord.Visible = True
End Sub