Re Michel
OK Capito, ne cherche pas...
Citation:
Function CompanyDetailADOQuery(ByVal TheCode As String) AsString
Dim Source As ADODB.Connection
Dim ADOQuery As ADODB.Recordset
Dim SQLString AsString
SQLString = 'SELECT Codes FROM Company WHERE Codes='
Set Source = New ADODB.Connection
Source.Provider = 'Microsoft.jet.OLEDB.4.0;'
Source.Open ThePath & ACCESSBase
Set ADOQuery = New ADODB.Recordset
Set ADOQuery = Source.Execute(SQLString & TheCode)
CompanyDetailADOQuery = ADOQuery.Fields(0)
ADOQuery.Close
Source.Close
EndFunction
|
Ici No Problemo...
Mais je reste bien dans le Champs 'Codes' (Field(0)) et celà passe ensuite par un retour précis sur un champs de mon Objet RecordSet.... : CompanyDetailADOQuery =
ADOQuery.Fields(0)
Par contre là où celà se corse et devient impossible c'est de dire que je veux récupérer un autre Champs (exemple Fiekd(4)), ce qui est normal la requête SQL me construit un RecordSet limité à un seul champs....
Je peux donc faire une approche comme ceci :
Citation:
Function CompanyDetailADOQuery(ByVal TheCode As String) AsString
Dim Source As ADODB.Connection
Dim ADOQuery As ADODB.Recordset
Dim SQLString AsString
SQLString = 'SELECT Codes,Deposit FROM Company WHERE Codes='
Set Source = New ADODB.Connection
Source.Provider = 'Microsoft.jet.OLEDB.4.0;'
Source.Open ThePath & ACCESSBase
Set ADOQuery = New ADODB.Recordset
Set ADOQuery = Source.Execute(SQLString & TheCode)
CompanyDetailADOQuery = ADOQuery.Fields(1)
ADOQuery.Close
Source.Close
EndFunction
|
Mais dans le cas de Figure réél de ma Démo, en fait cette Function me passe en argument le Champs que je veux récupérer de mon RecordSet (Function CompanyDetailADOQuery(ByVal TheCode As String, Champs As Integer) As String) et d'où mes plantages de ce matin...
En tout cas grand grand merci de ta suggestion qui me servira sûrement dans d'autres cas.
Bonne Fin d'Aprèm
@+Thierry