cammakarima
Messages postés8Date d'inscriptionmardi 12 septembre 2006StatutMembreDernière intervention17 février 2009
-
17 févr. 2009 à 12:54
cammakarima
Messages postés8Date d'inscriptionmardi 12 septembre 2006StatutMembreDernière intervention17 février 2009
-
17 févr. 2009 à 17:23
karima
j'ai un problème sur l'enregistrement d'un fichier execl
voila le code:
Set xl = New Excel.Application
Set ws = xl.Workbooks.Open(App.Path & "\poubelle.xls")
xl.Visible = True
Do Until entR.EOF
With ws.Worksheets("rdv") If IsNull(entR("code_rdv")) False Then .Cells(n, 1) entR("code_rdv")
If IsNull(entR("code_per")) = False And entR("code_per") <> 0 Then
If entf.State = 1 Then entf.Close
entf.Open "select * from personnel where code_per=" & entR("code_per"), cn, adOpenStatic, adLockReadOnly
.Cells(n, 2) = entR("code_per") & Chr(9) & entf("nom") & " " & entf("prenom")
End If
End With
entR.MoveNext
If entR.RecordCount > 1 Then n = n + 1
Loop
ws.Save
ws = xl.Workbooks.Close
Set ws = Nothing
a partir de mon poste qui contient le fichier poubelle.xls
j'ai fais la sauvegarde sans probléme.
mais qu'on j'acces à cette command d'une autre poste il ouvre le fichier mais il l'enregistre pas il affiche un message
pour confirmer ou annuler l'enregisstrement j'ai fais oui mais il enregistre rien
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 17 févr. 2009 à 13:16
Salut
Je n'y connais pas grand chose en VBA, mais j'ai des doutes :
Ta variable 'n' vaut 0 lors de la première lecture.
Cells(0, 2) risque fort de produire une erreur
Si tu ne vois pas d'erreur, c'est que tu as peut-être mis un "On Error Resume Next" quelque part ---> A supprimer et à ne jamais utiliser
Quand tu l'auras enlevé, tu verras peut-être d'autres erreurs qui t'aiguilleront sur la raison de ton problème.
Ce qui me parait bizarre, c'est cette ligne :
ws.Save
Pour quoi ne pas utiliser ce même genre de syntaxe :
ws = xl.Workbooks.Save
VB6 et VBA se ressemblent énormément.
Tu peux très bien créer une macro sous Excel (en VBA) et la copier dans VB6 : Tu n'auras plus qu'à modifier le nom de l'objet sur laquelle porte le programme.
Ton message de confirmation est-il un message de Excel ou de VB6 ?
Quel est sont texte exact + le texte du bandeau bleu en haut de la MsgBox ?
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cammakarima
Messages postés8Date d'inscriptionmardi 12 septembre 2006StatutMembreDernière intervention17 février 2009 17 févr. 2009 à 17:23
karima
j'ai fait ws = xl.Workbooks.Save
if s'affiche un messaged'erruer n°:438 l'application ne gere pas cettepropriété ou cette methode.
qui se que je fait pour que je puisse modifier le fichier xls à partir de d'autre poste