macro pour remplir un document word depuis une feuille tampon exce
3 réponses
stopit
bonjour,
La fonction publipostage sous word me semble un peu lourde pour cela. Alors
afin d'établir plus rapidement des devis je souhaite utiliser une macro ou
une fonction me permettant de remplir les coordonnées de mon client dans un
courrier word; ceci à partir d'un fichier client sous excel. Existe il une
telle fonction ou comment debuter pour cette macro?
merci d'avance
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Clément Marcotte
Bonjour,
C'est encore plus simple avec le publipostage dans Word. D'autant plus que rien n'empêche d'utiliser le fichier Excel comme base de données pour inscrire d'un coup, ou presque :
Les coordonnées du client Les matériaux à utiliser Le nombre d'heures de travail Les coûts unitaires Les quantités Les montants avant les taxes Les taxes Les montants totaux.
Suffit d'un document-type avec les champs de fusion appropriés.
"stopit" a écrit dans le message de news:
bonjour,
La fonction publipostage sous word me semble un peu lourde pour cela. Alors afin d'établir plus rapidement des devis je souhaite utiliser une macro ou une fonction me permettant de remplir les coordonnées de mon client dans un courrier word; ceci à partir d'un fichier client sous excel. Existe il une telle fonction ou comment debuter pour cette macro? merci d'avance
Bonjour,
C'est encore plus simple avec le publipostage dans Word. D'autant plus que
rien n'empêche d'utiliser le fichier Excel comme base de données pour
inscrire d'un coup, ou presque :
Les coordonnées du client
Les matériaux à utiliser
Le nombre d'heures de travail
Les coûts unitaires
Les quantités
Les montants avant les taxes
Les taxes
Les montants totaux.
Suffit d'un document-type avec les champs de fusion appropriés.
"stopit" <mpitton@seguin-moreau.fr> a écrit dans le message de news:
245BFAC1-411D-482A-AC93-D828F5CA5403@microsoft.com...
bonjour,
La fonction publipostage sous word me semble un peu lourde pour cela.
Alors
afin d'établir plus rapidement des devis je souhaite utiliser une macro ou
une fonction me permettant de remplir les coordonnées de mon client dans
un
courrier word; ceci à partir d'un fichier client sous excel. Existe il une
telle fonction ou comment debuter pour cette macro?
merci d'avance
C'est encore plus simple avec le publipostage dans Word. D'autant plus que rien n'empêche d'utiliser le fichier Excel comme base de données pour inscrire d'un coup, ou presque :
Les coordonnées du client Les matériaux à utiliser Le nombre d'heures de travail Les coûts unitaires Les quantités Les montants avant les taxes Les taxes Les montants totaux.
Suffit d'un document-type avec les champs de fusion appropriés.
"stopit" a écrit dans le message de news:
bonjour,
La fonction publipostage sous word me semble un peu lourde pour cela. Alors afin d'établir plus rapidement des devis je souhaite utiliser une macro ou une fonction me permettant de remplir les coordonnées de mon client dans un courrier word; ceci à partir d'un fichier client sous excel. Existe il une telle fonction ou comment debuter pour cette macro? merci d'avance
Clément Marcotte
Oupss !
J'aurions peut-être dû dire :
rien n'empêche d'utiliser le fichier Excel comme sources de données pour
au lieu de
rien n'empêche d'utiliser le fichier Excel comme base de données pour
Encore qu'Access peut très bien aussi servir comme source de données. Et puis le publipostage avec Word, permet même de créer des requêtes.
Et puis, s'il faut absolument réinventer le lait avec une macro, on peut utiliser l'objet "MailMerge" de Word par Automation.
Oupss !
J'aurions peut-être dû dire :
rien n'empêche d'utiliser le fichier Excel comme sources de données pour
au lieu de
rien n'empêche d'utiliser le fichier Excel comme base de données pour
Encore qu'Access peut très bien aussi servir comme source de données. Et
puis le publipostage avec Word, permet même de créer des requêtes.
Et puis, s'il faut absolument réinventer le lait avec une macro, on peut
utiliser l'objet "MailMerge" de Word par Automation.
rien n'empêche d'utiliser le fichier Excel comme sources de données pour
au lieu de
rien n'empêche d'utiliser le fichier Excel comme base de données pour
Encore qu'Access peut très bien aussi servir comme source de données. Et puis le publipostage avec Word, permet même de créer des requêtes.
Et puis, s'il faut absolument réinventer le lait avec une macro, on peut utiliser l'objet "MailMerge" de Word par Automation.
JFrancois QC
Salut, Clément a bien raison. Mais si tu veux te faire suer un peu plus voici un peu de code (N'oublie pas de référencer Excel ...sous VBA : Outil références Microsoft Excel)
Sub ListerClients() Const kRep = "d:monRep" Const kCli = "Clients.xls" Dim appXl As New Excel.Application Dim rCli As Excel.Range Dim iCli As Integer Dim sNom As String Dim sAdr As String Dim sMail As String appXl.Workbooks.Open kRep & kCli Set rCli = Workbooks(kCli).Worksheets(1).Range("Cli") 'A1:C50 With UserForm1 For iCli = 2 To rCli.Rows.Count .ListBox1.AddItem rCli.Cells(iCli, 1).Value Next iCli .Show iCli = .ListBox1.ListIndex + 2 End With sNom = rCli.Cells(iCli, 1).Value sAdr = rCli.Cells(iCli, 2).Value sMail = rCli.Cells(iCli, 3).Value appXl.Quit Set rCli = Nothing Set appXl = Nothing
La fonction publipostage sous word me semble un peu lourde pour cela. Alors afin d'établir plus rapidement des devis je souhaite utiliser une macro ou une fonction me permettant de remplir les coordonnées de mon client dans un courrier word; ceci à partir d'un fichier client sous excel. Existe il une telle fonction ou comment debuter pour cette macro? merci d'avance
Salut,
Clément a bien raison. Mais si tu veux te faire suer un peu plus voici un
peu de code
(N'oublie pas de référencer Excel ...sous VBA : Outil références Microsoft
Excel)
Sub ListerClients()
Const kRep = "d:monRep"
Const kCli = "Clients.xls"
Dim appXl As New Excel.Application
Dim rCli As Excel.Range
Dim iCli As Integer
Dim sNom As String
Dim sAdr As String
Dim sMail As String
appXl.Workbooks.Open kRep & kCli
Set rCli = Workbooks(kCli).Worksheets(1).Range("Cli") 'A1:C50
With UserForm1
For iCli = 2 To rCli.Rows.Count
.ListBox1.AddItem rCli.Cells(iCli, 1).Value
Next iCli
.Show
iCli = .ListBox1.ListIndex + 2
End With
sNom = rCli.Cells(iCli, 1).Value
sAdr = rCli.Cells(iCli, 2).Value
sMail = rCli.Cells(iCli, 3).Value
appXl.Quit
Set rCli = Nothing
Set appXl = Nothing
La fonction publipostage sous word me semble un peu lourde pour cela. Alors
afin d'établir plus rapidement des devis je souhaite utiliser une macro ou
une fonction me permettant de remplir les coordonnées de mon client dans un
courrier word; ceci à partir d'un fichier client sous excel. Existe il une
telle fonction ou comment debuter pour cette macro?
merci d'avance
Salut, Clément a bien raison. Mais si tu veux te faire suer un peu plus voici un peu de code (N'oublie pas de référencer Excel ...sous VBA : Outil références Microsoft Excel)
Sub ListerClients() Const kRep = "d:monRep" Const kCli = "Clients.xls" Dim appXl As New Excel.Application Dim rCli As Excel.Range Dim iCli As Integer Dim sNom As String Dim sAdr As String Dim sMail As String appXl.Workbooks.Open kRep & kCli Set rCli = Workbooks(kCli).Worksheets(1).Range("Cli") 'A1:C50 With UserForm1 For iCli = 2 To rCli.Rows.Count .ListBox1.AddItem rCli.Cells(iCli, 1).Value Next iCli .Show iCli = .ListBox1.ListIndex + 2 End With sNom = rCli.Cells(iCli, 1).Value sAdr = rCli.Cells(iCli, 2).Value sMail = rCli.Cells(iCli, 3).Value appXl.Quit Set rCli = Nothing Set appXl = Nothing
La fonction publipostage sous word me semble un peu lourde pour cela. Alors afin d'établir plus rapidement des devis je souhaite utiliser une macro ou une fonction me permettant de remplir les coordonnées de mon client dans un courrier word; ceci à partir d'un fichier client sous excel. Existe il une telle fonction ou comment debuter pour cette macro? merci d'avance