IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Erreur 3265 - Correction/Contournement


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 47
    Par défaut Erreur 3265 - Correction/Contournement
    Bonjour,


    J'arrive à me connecter à ma base oracle et à envoyer des requêtes simples pour avoir la date courante...

    Maintenant, lorsque j'essaie de travailler sur mes données pour les extraires dans excel, cela ne marche pas car j'ai une erreur :

    Error 3265
    Item cannot be found in the collection corresponding to the requested name or ordinal
    Si vous avez des propositions, suggestions/moyens de contournement de l'erreur, n'hésitez pas, ou savez d'où peut provenir l'erreur, n'hésitez pas.

    Ma requête marche pourtant quand je la teste sur la base à l'aide d'un requêteur.

    Merci d'avance

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    Private Sub CommandButton1_Click()
     
     
    'Defining variables
    Dim cnOra As ADODB.Connection
    Dim rsOra As ADODB.Recordset
    Dim db_name As String
    Dim UserName As String
    Dim Password As String
     
    Set cnOra = New ADODB.Connection
    Set rsOra = New ADODB.Recordset
     
    db_name = "****"
    UserName = "****"
    Password = "****"
     
     
    'Making an ODBC connection according to ADO
    cnOra.Open "DSN=" + db_name + ";UID=" + UserName + ";PWD=" _
    & Password + ";"
    rsOra.CursorLocation = adUseServer
     
    'Running a query
    rsOra.Open "select DS_LANCEBATCH.IDLANCEBATCH from DS_LANCEBATCH group by IDLANCEBATCH", cnOra, adOpenForwardOnly
     
    'Passing on data from the recordset to a variable or cell.
    'Notice that the column name or alias is used to address
    'data in the recordset.
    While Not rsOra.EOF
    Worksheets("Sheet1").Range("A3").End(xlDown).Offset(1, 0) = rsOra![DS_LANCEBATCH.IDLANCEBATCH]
    rsOra.MoveNext
    Wend
     
    rsOra.Close
    rsOra.Open "select sysdate from dual", cnOra, adOpenForwardOnly
     
    While Not rsOra.EOF
    Worksheets("Sheet1").Range("A2") = rsOra![sysdate]
    rsOra.MoveNext
    Wend
     
    'Forgetting to close your connection will sometimes result in
    'Dr.Watsons
    rsOra.Close
    cnOra.Close
    Set rsOra = Nothing
     
    End Sub

  2. #2
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 47
    Par défaut
    Bonjour,


    J'ai avancé un peu sur mon problème grâce à cette page :
    http://drq.developpez.com/vb/tutoriels/ADO/Chapitre3/

    en fait mon problème vient du curseur de parcourt du résultat de ma requête.

    En effet si j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    While Not (rsOra.EOF)
      MsgBox rsOra("JOBMASTNAME") & " "
      rsOra.MoveNext
    Wend
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    While Not rsOra.EOF
    Worksheets("Sheet1").Range("A3").End(xlDown).Offset(1, 0) = rsOra![JOBMASTNAME]
    rsOra.MoveNext
    Wend
    je récupère bien mes données dans les box

    maintenant il ne me reste plus qu'à trouver une astucve pour faire débugger ce pointer, une idée?


    Merci d'avance

  3. #3
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 47
    Par défaut
    En fait le problème venait bien du pointeur, donc je l'ai déclaré en adOpenStatic pour un parcours bidirectionnel et je le force à pointer correctement avec un MoveNext et MovePrevious

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    rsOra.Open "select JOBMASTNAME from DS_LANCEBATCH group by JOBMASTNAME", cnOra, adOpenStatic
    rsOra.MoveNext
    rsOra.MovePrevious

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. *VB6* Erreur 3265
    Par jlb59 dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 03/03/2019, 09h55
  2. Réponses: 6
    Dernier message: 22/09/2010, 17h37
  3. [E-03] Erreur 3265 dans script Export données Access ver Excel
    Par Ashram2 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/09/2008, 15h23
  4. Erreur 3265 dans une requête
    Par Baichette dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 16/09/2008, 11h05
  5. bdd : erreur 3265 élément non trouvé dans cette collection
    Par morgan47 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 10/07/2006, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo