Pages

[XL-2007] Problème Fin exécution macro sujet

jeudi 27 mars 2014




Bonjour,
j'ai créé une petite macro dans excell 2007 qui
1-ouvre une Forms avec 2 champs usr&psswd et 2 boutons ok & cancel
2-un script qui se connecte à une db postgrsql en utilisant les données de connexion renseignées(user et passwd) et qui affiche le résultat d'un query dans la feuille
c'est donc relativement simple.

Le problème se trouve à la fin de l'exécution de la macro...
si dans la Forms je clique sur cancel,il fait ce qu'il faut...rien, il reste dans la feuille excell comme si on avait rien fait
si dans la Forms j'encode un usr/passwd valide et que je clique sur ok...il exécute bien la requête,il affiche bien le résultat dans excell mais ...il revient en mode édition sur la forms (il ouvre donc l'éditeur de forms)au lieu de rester dans la feuille excell...
voici le script...une idée?

Load frmConnex
frmConnex.Show

Dim user As String
Dim passwd As String

user = frmConnex.txtUser
passwd = frmConnex.txtPasswd

If frmConnex.blnCancel = True Then
Unload frmConnex
Exit Sub
End If

Unload frmConnex


Application.Goto Reference:="gesdos_connex"
Dim objDb_con
Dim strSomeValue As String

Set objDb_con = CreateObject("ADODB.Connection")
Set Rsdatatype = CreateObject("ADODB.RecordSet")


glbConnString = "Driver={PostgreSQL Unicode};Database=statistics;server=sd1833v;port=5433;UID=" + user + ";Pwd=" + passwd

If glbConnString = "" Then
MsgBox "Enter the Connection String"
Else:
objDb_con.Open glbConnString

strSql = "select xxxx " & _
" from xxx" & _
" join xxx" & _
" where xxx"

Set Rsdatatype = objDb_con.Execute(strSql)
Columns("A:E").ClearContents
[A2].CopyFromRecordset Rsdatatype

Rsdatatype.Close

End If
objDb_con.Close
Set Rsdatatype = Nothing
Set objDb_con = Nothing
Exit Sub
End Sub




Aucun commentaire:

Enregistrer un commentaire