VBA Excel : mauvaise utilisation de New

Résolu/Fermé
Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 - 12 août 2006 à 13:00
Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 - 16 août 2006 à 23:17
Bonjour le Forum,

le code ci-dessous (extraction de données d'une base Oracle dans unfichier texte, zippage de ce fichier, puis envoi par mail avec Lotus Notes) fonctionnait très bien, jusqu'à ce que j'en fasse une copie dans un nouveau fichier.
je précise que les références suivantes sont cochées :

* Visual Basic For Applications
* Microsoft Excel 10.0 Object Library
* OLE Automation
* Microsoft Office 10.0 Object Library
* Microsoft DAO 3.51 Object Library
* Lotus Domino Objects
* Microsoft ActiveX Data Objects 2.7 Library

Auriez-vous une idée du pourquoi de ce message d'erreur : "Invalid use of New keyword" sur la ligne "Set objConn = New Connection"?
Option Explicit

' chaînes de connexion aux serveurs BDOTC de PROD et HOMOL
Public Const CONST_BDOTC_PROD = "Provider=MSDAORA. 1;Password=crmuser;User ID=crmuser;Data Source=OPARRSKX01.WORLD"
Public Const CONST_BDOTC_HOMOL = "Provider=MSDAORA. 1;Password=crmuser;User ID=crmuser;Data Source=OPARRSKH01.WORLD"

Public Sub RDM_ASIE()
    Dim objConn     As Connection
    Dim objRS       As Recordset
    Dim strSQL      As String
    Dim strFichier  As String
    Dim strDest()   As String
    Dim dteDebut    As Date
    Dim dteFin      As Date
    Dim intFile     As Integer
    Dim lngIndex    As Long
    Dim lngNbFields As Long
    Dim lngTotal    As Long
 
    On Error GoTo Err_
 
    strFichier = "C:\Homeware\HistoTokyo.txt"
 
    ' definition de la chaine de connexion
    Application.StatusBar = "Connection à la base..."
    Set objConn = New Connection
 
    ' le reste du code...
End Sub
A voir également:

2 réponses

Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 1 528
12 août 2006 à 22:05
Hello Kobaya,

Essaie en modifiant la priorité des bibliothèques :
monte la Microsoft ActiveX devant la Microsoft DAO, pour voir.
0
Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 214
12 août 2006 à 22:42
ok, j'essaierai ça dès lundi, à mon boulot, et je te tiens au courant.

merci Armojax.
0
Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 214
14 août 2006 à 09:35
re,

j'ai trouvé l'erreur.
En fait, j'avais oublié de copié dans la nouveau fichier des constantes et variables utilisées par les différentes fonctions/procédures pour envoyer zipper l'extraction...

Merci Armojax d'avoir pris le temps de lire mon post.
0
Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 1 528 > Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008
14 août 2006 à 09:37
Bon, hébé tant mieux si ça marche.
Et bon lundi, en attendant demain !
0
Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 1 528
16 août 2006 à 21:42
Hello Kobaya, je reviens sur le sujet...
J'avais suggéré l'inversion des priorités de bibliothèques parce qu'effectivement, en testant ton bout de code (avec On error... en commentaires), j'avais le message "Utilisation incorrecte du mot clé New" si la bib. ActiveX était dessous, et pas d'erreur dans l'autre cas.

Par curiosité, quand tu auras une minute, peux-tu me dire si ça fait pareil chez toi ?

P.S. Je n'ai pas de bib. Lotus...
0
Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 214
16 août 2006 à 23:17
salut Armojax,

je te dirais ça demain, au boulot.

mais je me demande si c'est pertinent ce genre de test, car VBA (et VB aussi si mes souvenirs sont bons) renvoient parfois des messages d'erreurs sans aucun rapport avec l'erreur qu'on finit par détecter...

allez, bonne nuit, moi je vais ronfler... :-}RRRRRR

0