Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
objOleTxtBx.Object.Value = Item.FirstName
il faut lire
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
objOleTxtBx.Object.Value = Item.FirstName
il faut lire
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
objOleTxtBx.Object.Value = Item.FirstName
il faut lire
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message de
news:VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value > >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value > >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message de
news:VBScript ne semble pas aimer les déclarations où l'on type les variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp = Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value > >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value =
Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
Philipe
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message de
news: 46EB47C3-E7D4-4238-9C04-A67BC63E1716@microsoft.com...
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
Philipe
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message de
news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété qui
est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété qui
est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("\Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:
OPgkm5ghGHA.1272@TK2MSFTNGP03.phx.gbl...
Bonjour
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de news: 46EB47C3-E7D4-4238-9C04-A67BC63E1716@microsoft.com...
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
Philipe
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété qui
est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le message
de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle avant
d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" a écrit dans le message de news:Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le
message de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle avant
d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" <bogus@bidon.net> a écrit dans le message de news:
uZL86LihGHA.4712@TK2MSFTNGP05.phx.gbl...
Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("\Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:
OPgkm5ghGHA.1272@TK2MSFTNGP03.phx.gbl...
Bonjour
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de news: 46EB47C3-E7D4-4238-9C04-A67BC63E1716@microsoft.com...
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
Philipe
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle avant
d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" a écrit dans le message de news:Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le
message de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir le
code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Michel,
ça marche comme ça.
Crois tu qu'il y ait un moyen de "raffraichir" tous les contrôle d'un coup
?
Philippe
"Michel Pierron" a écrit dans le message de news:Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle
avant d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" a écrit dans le message de news:Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire
Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le
message de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as
suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir
le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Michel,
ça marche comme ça.
Crois tu qu'il y ait un moyen de "raffraichir" tous les contrôle d'un coup
?
Philippe
"Michel Pierron" <michel.pierron@free.fr> a écrit dans le message de news:
ueTGsYihGHA.3588@TK2MSFTNGP02.phx.gbl...
Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle
avant d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" <bogus@bidon.net> a écrit dans le message de news:
uZL86LihGHA.4712@TK2MSFTNGP05.phx.gbl...
Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("\Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:
OPgkm5ghGHA.1272@TK2MSFTNGP03.phx.gbl...
Bonjour
Le code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message
de news: 46EB47C3-E7D4-4238-9C04-A67BC63E1716@microsoft.com...
Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire
Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
Philipe
Re
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message de
news: C22A986F-099A-40AC-87C0-0AEF62E5DD4C@microsoft.com...
VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as
suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
Philippe
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" <philippe@discussions.microsoft.com> a écrit dans le
message
de
news: BAD22C19-0A61-4848-8747-D47C1963E122@microsoft.com...
Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir
le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("\ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub
Merci Michel,
ça marche comme ça.
Crois tu qu'il y ait un moyen de "raffraichir" tous les contrôle d'un coup
?
Philippe
"Michel Pierron" a écrit dans le message de news:Bonjour Philippe;
Je pense qu'il s'agit d'un problème de rafraîchissement d'écran peut être
lié à la version d'Excel utilisée.
Tu peux contourner le problème en activant préalablement le contrôle
avant d'y inscrire une valeur:
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Activate
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value =
Item.FirstName
objExcelSheet.Cells(1, 1).Activate
MP
"Philippe" a écrit dans le message de news:Merci Papou,
En y regardant de plus près, je me rend compte que la valeur a bien été
affectée dans le textBox :
En regardant les propriétés du text box dans Excel, j'ai bien le nom de
mon contact dans les champs "Text" et "Vaue".
Donc on peut dire que ça marche.
Le "problème", est que cette valeur n'est pas visible / affichée dans le
contrôle tel qu'il apparait à l'utilisateur.
C'est vraiment bizarre. Un peu comme si après avoir programmatiquement
modifié la valeur du contrôle, il fallait modifier une autre propriété
qui est ce qui est affiché dans le contrôle. Ou bien comme si il falait
"rafraichir" le contrôle.
Bizarrement, la même méthode modifie et affiche quand elle est utilisée
dans un module vba excel.
Ici le code est exécuté depuis un formulaire outlook où il est en vbs.
Voici le code testé :
----------------------------
Sub exportVersExcel_Click()
Set objExcelApp = Application.CreateObject("Excel.Application")
Set objExcelBook = objExcelApp.Workbooks.Open _
("Server03annuaireDemande_Ouverture_Compte.xls")
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
Set objTextBox_NomBenef = objExcelSheet.OLEObjects("TextBox_NomBenef")
objTextBox_NomBenef.Object.value = Item.LastName
objExcelApp.Application.Visible = True
End Sub
-------------------------------
"papou" <cestpasbon@çanonplus> a écrit dans le message de news:BonjourLe code est placé dans le formulaire, c'est du vbscript.
Le code est donc exécuté à partir d'Outlook ?
Voici le test effectué :
Sub testons()
Dim objExcel, objExcelBook, objExcelSheet, objOleTxtBx As Object
Set objExcel = CreateObject("Excel.Application")
Set objExcelBook = objExcel.Workbooks.Open _
("C:Documents and SettingspapouMes
documentsAssistancempfetest01062006.xls")
objExcel.Visible = True
Set objExcelSheet = objExcelBook.Worksheets("Feuil1")
Set objOleTxtBx = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = "zozo"
End Sub
Cordialement
Pascal
"philippe" a écrit dans le message
de news:Bonsoir,
Le code est lancé par un click sur un bouton dans un formulaire
Outlook
Le code est placé dans le formulaire, c'est du vbscript.
Peux tu me montrer le code que tu as essayé en entier ?
Tu n'as peut être pas créé l'objet objExcelSheet comme moi.
Cordialement,
PhilipeRe
Tu n'as pas dit comment tu lances ce code ?
Mais ce code avec les modifis apportées et exécuté dpuis Outlook ou
Word
fonctionne parfaitement pour moi.
S'il s'agit d'un script pur (fichier .VBS), essaie d'utiliser la
valeur
d'index des deux objets :
Set objOleTxtBx1 = objExcelSheet.OLEObjects(1)
Cordialement
Pascal
"philippe" a écrit dans le
message de
news:VBScript ne semble pas aimer les déclarations où l'on type les
variables,
il
retourne une erreur.
J'ai essayé en ajoutant une étape sur le modèle que tu m'as
suggéré.
Créer l'objet d'abord,
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
Manipuler sa valeur ensuite
objOleTxtBx.Object.Value = Item.FirstName
Mais ça donne le même résultat !.
Je continue à chercher,
Merci,
PhilippeSet objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")Bonjour
Déclare les objets textbox dans ton script et modifie comme ceci :
Dim objExcel, objExcelBook, objExcelSheet
'.....
Dim objOleTxtBx1 As Object
Dim objOleTxtBx1 As Object
Set objOleTxtBx1 = objExcelSheet.OLEObjects("TextBox_PrenomBenef")
objOleTxtBx.Object.Value = Item.FirstName
Set objOleTxtBx2 = objExcelSheet.OLEObjects("TextBox_NomBenef")
objOleTxtBx2.Object.Value = Item.LastName
'.....
Cordialement
Pascal
"philippe" a écrit dans le
message
de
news:Bonjour,
J'ai un script dans outlook qui doit écrire dans deux contrôles
actives
x
sur une feuille excel.
Depuis outlook j'arrive a écrire dans des cellules excel (voir
le code
ci-dessous).
Dans excel, pas de pb pour écrire dans les controle active x.
Mais en vbs depuis outlook, je sèche.
Quelqu'un a t il une idée ?
Merci d'avance,
Philippe
Sub exportVersExcel_Click()
Set objExcelApp =
Item.Application.CreateObject("Excel.Application")
objExcelApp.Workbooks.Open
("ServerannuaireDemande_Ouverture_Compte.xls")
Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets("DemandeOuverture")
objExcelSheet.Activate
' ca ca marche :
objExcelSheet.range("J12").value = Item.LastName
objExcelSheet.range("J14").value = Item.CompanyName
' ca ça ne donne rien :
objExcelSheet.OLEObjects("TextBox_PrenomBenef").Object.value >>>>>> >> > Item.FirstName
objExcelSheet.OLEObjects("TextBox_NomBenef").Object.value >>>>>> >> > Item.LastName
' et ça, ça donne une erreur :
with sheets("DemandeOuverture")
OLEObjects("TextBox_PrenomBenef").Object.value = Item.FirstName
OLEObjects("TextBox_NomBenef").Object.value = Item.LastName
end with
objExcelApp.Application.Visible = True
End Sub