Bonjour Daniel.
Tout d’abord merci infiniment de votre réponse rapide !
J'ai dans un premier temps recopier ( bêtement) dans un nouveau module excel :
[code]
Sub MacroExcel()
Dim Variable As String
Variable = "toto"
MacroWord Variable
End Sub
[/code]
et dans word :
[code]
Sub MacroWord(Var)
MsgBox Var
End Sub
[/code]
Mais j'obtiens une erreur.
J'ai ensuite copier les 2 partie du code dans excel, et la j'ai bien une msgbox avec le nom de la variable "toto".
Je ne sais pas comment utiliser votre exemple dans mes documents.
Dans excel j'ai pour l'instant ce code :
[code]
Sub publipost_ETI()
'choix du dossier de sauvegarde
Dim objShell As Object, objFolder As Object, oFolderItem As Object
Dim Chemin_du_dossier_de_sauvegarde As String
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir le répertoire de sauvegarde des étiquettes dans CHANTIER", &H1&)
On Error Resume Next
Set oFolderItem = objFolder.Items.Item
Chemin_du_dossier_de_sauvegarde = oFolderItem.Path
'définition des noms des planches étiquettes
Dim nom_ETIPX As String
Dim nom_ETIQUINC As String
Dim nom_ETIDEBIT As String
Dim CH_ETIPX As String
Dim CH_ETIQUINC As String
Dim CH_ETIDEBIT As String
'Dim wApp As Object
' Set wApp = CreateObject("Word.Application")
nom_ETIPX = Sheets("Calep").Range("D1").Value
nom_ETIQUINC = Sheets("Calep").Range("D2").Value
nom_ETIDEBIT = Sheets("Calep").Range("D3").Value
CH_ETIPX = Chemin_du_dossier_de_sauvegarde & "" & nom_ETIPX
CH_ETIQUINC = Chemin_du_dossier_de_sauvegarde & "" & nom_ETIQUINC
CH_ETIDEBIT = Chemin_du_dossier_de_sauvegarde & "" & nom_ETIDEBIT
' MsgBox ("Le chemin de sauvegarde des étiquettes sera : " & Chemin_du_dossier_de_sauvegarde)
' MsgBox ("Le nom des étiquettes panneaux sera : " & vbCr & nom_ETIPX & vbCr & vbCr & "Le nom des étiquettes quincailerie sera : " & vbCr & nom_ETIQUINC & vbCr & vbCr & "Le nom des étiquettes débit sera : " & vbCr & nom_ETIDEBIT)
' MsgBox ("Le chemin complet des étiquettes panneaux sera : " & vbCr & CH_ETIPX)
' MsgBox ("Le chemin complet des étiquettes quincaillerie sera : " & vbCr & CH_ETIQUINC)
' MsgBox ("Le chemin complet des étiquettes débit sera : " & vbCr & CH_ETIDEBIT)
'Ouvrir le modèle word
'Set wordapp = CreateObject("word.Application")
'wordapp.Visible = True
'wordapp.Documents.Open "C:\Users\clouh\Desktop\ETIPX - Copie.docm"
'
End Sub
[/code]
et dans word celui la ( je redéclare pour l'instant mon chemin se sachant pas récupérer mes variables) :
[code]
Sub EXPORT_PDF_ETIPX()
'Boite de dialogue pour choisir la source de publipostage ETI PX
'MsgBox "Source des étiquettes"
Dim finput As FileDialog
Dim SRC_XL_PX As String
Set finput = Application.FileDialog(msoFileDialogOpen)
'.Title = "Choix du modèle"
finput.Show
SRC_XL_PX = finput.SelectedItems(1)
''''''''''''''''''''
'Boite de dialogue pour choisir la destination de publipostage ETI PX
' MsgBox "Destination des étiquettes"
Dim Repertoire_destination As FileDialog
Set Repertoire_destination = Application.FileDialog(msoFileDialogFolderPicker)
Repertoire_destination.Show
'''''''''''''''''''''''
'SELECTION_AUTO_SOURCE_ETIPX
'
'
ActiveDocument.MailMerge.OpenDataSource Name:=SRC_XL_PX, _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source= SRC_XL_PX;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;Jet OLEDB" _
, SQLStatement:="SELECT * FROM 'Etipx (2)$'", SQLStatement1:="", _
SubType:=wdMergeSubTypeAccess
With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
'''''
ChangeFileOpenDirectory _
"C:\Users\clouh\Desktop\Destination sauvegarde\TEST 3003-1"
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"C:\Users\clouh\Desktop\Destination sauvegarde\TEST 3003-1\4589 TAT ETIPX-687.pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True, OptimizeFor:= _
wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:=False
ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
End Sub
[/code]
Je cherche à redéfinir : "C:\Users\clouh\Desktop\Destination sauvegarde\TEST 3003-1"
par ma variable excel : Chemin_du_dossier_de_sauvegarde
et également : "C:\Users\clouh\Desktop\Destination sauvegarde\TEST 3003-1\4589 TAT ETIPX-687.pdf"
par ma variable excel : CH_ETIPX
D'avance merci pour votre aide.
Bien cordialement
Hugo