Vba : comment passer une variable de vba Excel vers vba Word ?
2 réponses
Jac
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je
calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word,
dans la procédure Private Sub Document_New() afin de pouvoir enregistrer le
fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas
moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
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
tissot.emmanuel
Bonjour,
Dans Excel, dans un module standard:
Public VariablePourWord As String
Function RetourneVariable() As String RetourneVariable = VariablePourWord End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel() Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As String
Set Myxl = CreateObject("Excel.Application") Myxl.Application.Visible = False 'Utile ou pas ? Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes ci-dessus par 'Set Myxl = GetObject(, "Excel.Application") 'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de fichier
MsgBox Retour 'Recupere la variable Set Myxl = Nothing End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" a écrit dans le message de news:
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word, dans la procédure Private Sub Document_New() afin de pouvoir enregistrer le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
Jac
Bonjour,
Dans Excel, dans un module standard:
Public VariablePourWord As String
Function RetourneVariable() As String
RetourneVariable = VariablePourWord
End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel()
Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As
String
Set Myxl = CreateObject("Excel.Application")
Myxl.Application.Visible = False 'Utile ou pas ?
Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le
chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes
ci-dessus par
'Set Myxl = GetObject(, "Excel.Application")
'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de
fichier
MsgBox Retour 'Recupere la variable
Set Myxl = Nothing
End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" <jsanssp@mfra.net> a écrit dans le message de news:
eg3PoUAxHHA.5108@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je
calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word,
dans la procédure Private Sub Document_New() afin de pouvoir enregistrer
le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas
moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
Function RetourneVariable() As String RetourneVariable = VariablePourWord End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel() Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As String
Set Myxl = CreateObject("Excel.Application") Myxl.Application.Visible = False 'Utile ou pas ? Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes ci-dessus par 'Set Myxl = GetObject(, "Excel.Application") 'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de fichier
MsgBox Retour 'Recupere la variable Set Myxl = Nothing End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" a écrit dans le message de news:
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word, dans la procédure Private Sub Document_New() afin de pouvoir enregistrer le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
Jac
Jac
Bonjour Emmanuel,
merci de t'être penché sur mon problème. Je teste et j'adapte...
"tissot.emmanuel" a écrit dans le message de news: %
Bonjour,
Dans Excel, dans un module standard:
Public VariablePourWord As String
Function RetourneVariable() As String RetourneVariable = VariablePourWord End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel() Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As String
Set Myxl = CreateObject("Excel.Application") Myxl.Application.Visible = False 'Utile ou pas ? Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes ci-dessus par 'Set Myxl = GetObject(, "Excel.Application") 'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de fichier
MsgBox Retour 'Recupere la variable Set Myxl = Nothing End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" a écrit dans le message de news:
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word, dans la procédure Private Sub Document_New() afin de pouvoir enregistrer le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
Jac
Bonjour Emmanuel,
merci de t'être penché sur mon problème.
Je teste et j'adapte...
"tissot.emmanuel" <tissot.emmanuel@free.fr> a écrit dans le message de news:
%23VwjhSJxHHA.600@TK2MSFTNGP05.phx.gbl...
Bonjour,
Dans Excel, dans un module standard:
Public VariablePourWord As String
Function RetourneVariable() As String
RetourneVariable = VariablePourWord
End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel()
Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As
String
Set Myxl = CreateObject("Excel.Application")
Myxl.Application.Visible = False 'Utile ou pas ?
Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le
chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes
ci-dessus par
'Set Myxl = GetObject(, "Excel.Application")
'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de
fichier
MsgBox Retour 'Recupere la variable
Set Myxl = Nothing
End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" <jsanssp@mfra.net> a écrit dans le message de news:
eg3PoUAxHHA.5108@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je
calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word,
dans la procédure Private Sub Document_New() afin de pouvoir enregistrer
le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas
moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.
merci de t'être penché sur mon problème. Je teste et j'adapte...
"tissot.emmanuel" a écrit dans le message de news: %
Bonjour,
Dans Excel, dans un module standard:
Public VariablePourWord As String
Function RetourneVariable() As String RetourneVariable = VariablePourWord End Function
Dans Word: Cocher la référence à Microsoft Excel xx.y Object Library
Sub LireVariableExcel() Dim Myxl As Excel.Application, MyBook As Excel.Workbook, Retour As String
Set Myxl = CreateObject("Excel.Application") Myxl.Application.Visible = False 'Utile ou pas ? Set MyBook = Myxl.Workbooks.Open("C:.....NomClasseur.xls")'Adapter le chemin et le nom de fichier
'Si le fichier Excel est deja ouvert utiliser remplacer les lignes ci-dessus par 'Set Myxl = GetObject(, "Excel.Application") 'Set MyBook = Myxl.Workbooks("NomClasseur.xls")'Adapter le nom de fichier
MsgBox Retour 'Recupere la variable Set Myxl = Nothing End Sub
C'est pas excessivement rapide, mais ca reste exploitable.
Bonne chance,
Manu/
"Jac" a écrit dans le message de news:
Bonjour à tous,
dans une procédure liée à du publipostage Word commandé depuis Excel, je calcule dans Excel le nom du fichier résultant du publipostage.
J'aimerais mémoriser ce nom dans Excel pour le passer à mon modèle Word, dans la procédure Private Sub Document_New() afin de pouvoir enregistrer le fichier depuis Word.
Au départ, je voulais commander l'enregistrement depuis Excel, mais pas moyen d'y arriver. Donc je dois ma rabattre sur Word pour y arriver.
Merci d'avance à qui pourrait me mettre sur la voie.