Bonjour,
C'est un peu pour cela que je demandais si tu pouvais adapter ta
procédure dans VBA pour Excel, et en l'exécutant au pas à pas à partir
d'un module dans Excel.
"Marc Tousignant" a écrit dans le
message de ...
Réponse:
L'utilisateur a tout les droits car: 1- ils sont administrateur sur
leur
machine et 2- J'utilise le dossier "Mes Documents" pour mes
enregistrements.
L'utilisateur ne peut pas écraser un fichier existant car j'ai fais
des
tests avec un utilisateur en lui demandant d'effac*er les fichiers
existants
(dans le cas où l'application aurait réussi à les créer et l'erreur
est
toujours présente.)
J'ai tenté de faire roulé le programme sans la ligne
workbooks(getfilename())*.save sur un poste et ça plante toujours.
Je me demande si c'est vraiment un problème automation, ou si le
message "erreur automation" cache une autre erreur mais que le
vrai
message d'erreur est "camouflé" par la liaison OLE.
Sais-tu comment je pourrais le savoir?
Merci
Marc T.
"Clément Marcotte" a écrit dans le
message
de ...
Bonjour,
D'autres question en l'air:
Sur les machines qui plantent, est-ce que l'utilisateur a les
droite
en lecture-écriture-effacement ?
Sur les machines qui plantent, est-ce parce que l'utilisateur
essaie
d'écraser un fichier existant du même nom ?
Je me demande si c'est vraiment un problème automation, ou si le
message "erreur automation" cache une autre erreur mais que le
vrai
message d'erreur est "camouflé" par la liaison OLE.
"Marc Tousignant" a écrit dans le
message de ...
La fonction est une de mes fonction VB qui ne fait que formatter
une
String
afin d'avoir un noom de fichier standardisé (FT 123456
2005-02-12.xls). Je
l'utilise pour avoir le nom du fichier destination du FileCopy.
"Clément Marcotte" a écrit dans
le
message
de ...
Bonjour,
Plus de questions que de réponses, mais on ne sait jamais.
Ton "GetFileName", est-ce une fonction personnalisée ? Il y
peut-être
une erreur de passage de paramètres, qui ressort en "fausse
erreur
automation".
Si c'est un alias pour une fonction API, est-ce que ta
fonction
API
est supportée sur les machines où ton programme plante ?
Et si tu adaptes ta procédure pour qu'elle roule dans
VBA-Excel au
lieu de VB, et que tu la passes au pas-à-pas dans Excel ?
"Marc Tousignant" a écrit dans
le
message de ...
Merci pour vos suggestion, le problème n'est pas le
fileCopy, il
se
situe
plus loin, après avoir défini les propriétés, au moment du
saveWorkBook
(ligne
obj.Workbooks(getFileName(cboEndWeek.List(cboEndWe ek.ListIndex))).Save
).
Il n'arrive que sur certain poste. Je vais essayer le
resume
next
sur un
poste en erreur. Je reste ouvert à toute autre
suggestion...
Merci
"Marc Tousignant" a écrit dans
le
message de
...
Bonjour,
J'ai développé un système multi-application d'ont une
communique
avec MS
Excel via des objets. Je les utilises pour insérer des
données
dans mon
fichier, j'y appel 2 macros (Sub public dans ma feuille
1), je
l'enregistre
puis le l'ouvre pour permettre à l'usager de saisir ses
données.
Au
moment
de la sauvegarde, certain poste déclanche une "Erreur
Automation"*. Je
vous
donne un extrait de mon code qui inter-agit entre vb et
excel.
Fait
éronnant, l'erreur ne se produit que suir certain poste.
Pourriez-vous me
renseigner sur ce type d'erreur?
Une aide serait grandement appréciée
Merci
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
''''
' Crée une nouvelle feuille de temps selon le modèle
maître,
l'enregistre
' dans l'emplacement choisi par l'utilisateur et l'ouvre
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
''''
Private Sub createTS(ByRef obj As Excel.Application,
strPath
As
String,
strLogo As String, _
intModele As Integer)
Dim ws As Excel.Worksheet
Dim intJourSemaine As Integer
On Error GoTo Erreurs
'On crée une copie du fichier maître pour l'entrer
d'une
nouvelle
'feuille de temps
FileCopy strPath, strPathSave
obj.Workbooks.Open strPathSave
'On désactive les events pour l'insertion des données
obj.EnableEvents = False
'Inscription des paramètres de l'en-tête de la feuille
de
temps
With obj.ActiveSheet
.Unprotect "ti2004"
.Cells(2, 1) = typEmp.strCie
.Cells(2, 2) = typEmp.strNoEmp
.Cells(2, 11) =
CDate(cboEndWeek.List(cboEndWeek.ListIndex))
.Cells(4, 1) = UCase(typEmp.strName)
.Cells(4, 6) = UCase(typEmp.strFirstName)
.Cells(12, 5).Select
'Chargement du logo
.setImage (strLogo)
.setTaches (intModele)
'.setVersion (VERSION)
'MsgBox "14", vbOKOnly
.Protect "ti2004"
End With
obj.Workbooks(getFileName(cboEndWeek.List(cboEndWe ek.ListIndex))).Save
'obj.ActiveWorkbook.Save
obj.Workbooks(getFileName(cboEndWeek.List(cboEndWe ek.ListIndex))).Save
d
= False
obj.EnableEvents = True
obj.Visible = True
dteDateMod = FileDateTime(strPathSave)
Exit Sub
Erreurs:
MsgBox Err.Description & " " & Err.Source,
vbInformation,
"VB"
obj.Quit
End Sub