Les codes ne marchent pas

Hermios Messages postés 264 Date d'inscription dimanche 14 avril 2013 Statut Membre Dernière intervention 23 mai 2014 - 2 avril 2006 à 19:24
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 2 avril 2006 à 23:49
Salut à tous
Je vais me la jouer original, j'aimerai connecter mon projet à une bdd (access, txt, ou excel peu importe)
J'ai bien regardé et recopié les codes proposés, dans ce site comme dans d'autres (dsl pour la trahison), mais ça môrche pas.
Dès la deuxième ligne: Set con = New ADODB.Connection
j'ai le sentiment qu'il veut pas qu'on soit amis... il aime pas mon set, et ne comprend pas ce que je veux lui dire
si je supprime cette ligne, c'est la suivante qui bugue et ainsi de suite
J'ai bien coché les références, mais la valeur 2.x n'existe pas, j'ai 2.0 à 2.7, et si je les sélectionne toutes, il me traite de conflit, ce qui est somme toute peu appréciable.
Alors help!!! (aidez moi, en anglais :-p )

6 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
2 avril 2006 à 19:45
bonsoir


il ne faut activer qu'une seule référence parmi les différentes versions proposées dans la liste


par exemple


Microsoft ActiveX Data Object 2.7 Library



bonne soiree
michel
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
2 avril 2006 à 19:47
Bonjour,

Exemple, non testé, trouvé sur ce forum, utilisant ADODB.

DIM ServeurSql
DIM BD
DIM TABLE
DIM PK
DIM ValeurPK
DIM Picture
DIM StringSql


ServeurSql = InputBox("Entrez le nom du Serveur Sql","Serveur Sql")
BD = InputBox("Entrez le nom de la BD Sql","Serveur Sql")
TABLE = InputBox("Entrez le nom de la table Sql","Serveur Sql")
Picture = InputBox("Entrez le nom du champ ou ce trouve la photo","Serveur Sql")
PK = InputBox("Entrez le nom du champ PK (Unique)","Serveur Sql")
ValeurPK = InputBox("Entrez la valeur du PK (Unique)","Serveur Sql")



'***********************CONSTRUCTION DE L'INSTRUTION SQL************
StringSql = "Select " + Picture + " FROM " + BD + ".." + TABLE + " WHERE " + PK + "=" + ValeurPK

'***********************DECLARATION DES CONSTANTES******************

Const PathSauvegarde = "c:\temp.jpg"

'***********************DECLARATION DES VARIABLES********************
DIM ADO
DIM RS
DIM Photo
DIM Path
DIM ChaineConnexion
DIM Heure
DIM Compteur

ChaineConnexion= "Integrated Security=SSPI;Provider=SQLOLEDB;data Source=" & ServeurSql & ";Initial Catalog=" + BD + ";"

'*************************DEBUT DU PROGRAMME*************************
Compteur = 0
Heure = Now

Set ADO = CreateObject("ADODB.Connection")
ADO.ConnectionString = ChaineConnexion
ADO.open
msgbox stringsql
set rs = ADO.Execute(StringSQL)

Photo = RS(picture)
SavePictureToDisk PathSauvegarde ,Photo
rs.movenext
Compteur = Compteur + 1


Ado.Close
Set Ado = Nothing
Set Rs = Nothing

MsgBox Compteur & " enregistrements sauvegardés dans le repertoire " & PathSauvegarde & vbNewLine & _
"Vous avez debuté le traitement a " & Heure & vbNewLine & _
"Il est présentement " & Now

'***********************FIN PROGRAMME *********************************


'**************** FONCTION SAVE PICTURE TO DISK **********************
Function SavePictureToDisk(Path,Photo)

Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Creation de l'object Stream
Dim BinaryStream
Set BinaryStream = CreateObject("ADODB.Stream")

'Specify stream type
BinaryStream.Type = adTypeBinary

'Ouvrir Stream et ecrire binaire dans l'objet
BinaryStream.Open
BinaryStream.Write Photo

'Save binary data To disk
BinaryStream.SaveToFile Path, adSaveCreateOverWrite
End Function

----------------------
jean-marc
0
mcs2006 Messages postés 58 Date d'inscription dimanche 19 mars 2006 Statut Membre Dernière intervention 1 mai 2006
2 avril 2006 à 19:52
Bonjour,

Pour VB6 :
Référence à cocher : "Microsoft ActiveX Data Objects 2.6 Library" au minimum.
Si conflit, décocher d'abord le "Microsoft ActiveX Data ...." existant.

Ensuite, dans le code :
Dim con As New ADODB.Connection
con.open TaChaineDeConnexion
...
0
Hermios Messages postés 264 Date d'inscription dimanche 14 avril 2013 Statut Membre Dernière intervention 23 mai 2014 2
2 avril 2006 à 19:54
Yop, merci d'avoir répondu si vite. Pour la dll, je m'en doutais un peu, mais merci de confirmer.
Pour le code, c sympa aussi, malheureusement, je n'utilise pas SQL, mais Access, txt, ou Excel.
Enfin, merci quand même d'avoir proposé!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Hermios Messages postés 264 Date d'inscription dimanche 14 avril 2013 Statut Membre Dernière intervention 23 mai 2014 2
2 avril 2006 à 19:57
A signaler aussi que j'avais un utilisé le code suivant :
'Déclaration de la fonction ShellExecute
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'Constantes déterminant le mode d'affichage de la fenêtre
Private Const SW_SHOWNORMAL = 1
et
Private Sub lance_immediat_Click()
ShellExecute Me.hwnd, vbNullString, "C:\Documents and Settings\Nicolas\Bureau\cv_Joachim_Domke__frz.doc", vbNullString, "C:\Documents and Settings\Nicolas\Bureau", SW_SHOWNORMAL
End Sub
Pour ouvrire un fichier
Ce système a très bien marché au début, maintenant, autant pisser dans un violon, il ne m'affiche même pas de message d'erreur, il ne fait rien (le bouton marche correctement, j'ai testé avec Msgbox, ça marche)
Merci
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 avril 2006 à 23:49
Salut Hermios
Que ce soit du Access ou autre, le questionnement se fait en général en SQL. Il n'y a pas d'incompatibilité.

Pour ton histoire de ShellExecute, vérifie si un "Resume Next" dans une autre Sub ne masquerait pas l'erreur + VB6 menu Outils, Options, Général, "Erreur sur toutes les erreurs du code"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
0
Rejoignez-nous