Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363

    [Access e DAO] errore strano

    codice:
        Dim db As Database
        Dim rs As Recordset
        Set db = CurrentDb
        Set rs = db.OpenRecordset("Agenzie")
    Perchè l'ultima riga mi dà errore "Errore di run-time'13' Tipo non corrispondente"?

  2. #2
    Presumo che "Agenzie" sia il nome di una tabella, o almeno così spero, sennò non va.

    in ogni caso, prendendo per buono che Agenzie sia il nome di una tabella, per settare un recordset devi dichiarare una variabile stringa:
    codice:
    Dim db As Database
    Dim rs As Recordset
    Dim strSql As String
    
    strSql = "Select * from Agenzie"
    
    Set db = CurrentDb
    Set rs = db.OpenRecordset(strSql)

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  3. #3
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    "Agenzie" è il nome di una tabella.

    La sintassi che ho riportato ha sempre funzionato su Access97.
    Ora il problema ce l'ho su Access2000.

    Il metodo OpenRecordset funzionava anche mettendo direttamente il nome della tabella (come da Guida di Microsoft Visual Basic, argomento da cercare "conversione del codice dao in ado")

    Comunque ho provato anche a mettere come hai scritto, ma ricevo lo stesso errore.


  4. #4
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    il tipo di errore restituito ti indica che la variabile utilizzata non è stata dichiarata correttamente per il tipo che devi utilizzare. prova ad includere le librerie DAO ed impostare la variabile RS com DAO.Recordset e vedi che tutto si risolve

  5. #5
    Originariamente inviato da darkblOOd
    il tipo di errore restituito ti indica che la variabile utilizzata non è stata dichiarata correttamente per il tipo che devi utilizzare. prova ad includere le librerie DAO ed impostare la variabile RS com DAO.Recordset e vedi che tutto si risolve
    scusa dark, ma io quando lavoro su Access la libreria DAO ce l'ho già inclusa...:master:
    e l'errore 13 me lo dava perchè voleva una variabile string e non l'istruzione scritta a manetta...:master:

    in ogni caso, può essere che lui non ce l'abbia

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  6. #6
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da ladyBlu
    scusa dark, ma io quando lavoro su Access la libreria DAO ce l'ho già inclusa...:master:
    e l'errore 13 me lo dava perchè voleva una variabile string e non l'istruzione scritta a manetta...:master:

    in ogni caso, può essere che lui non ce l'abbia
    il fatto che sia già inclusa o meno non importa, l'ho specificato in modo tale che possa verificare e cmq è bene dichiarare la variabile specificando che si tratta di un recordset di tipo DAO visto che alcuni metodi potrebbero creare i problemi che sta riscontrando. La maggior parte delle volte è per questo

    ovvio che poi, prima di chiamare la OpenRecordset del db...il db deve essere stato impostato correttamente ed aperto

  7. #7
    Originariamente inviato da darkblOOd
    il fatto che sia già inclusa o meno non importa, l'ho specificato in modo tale che possa verificare e cmq è bene dichiarare la variabile specificando che si tratta di un recordset di tipo DAO visto che alcuni metodi potrebbero creare i problemi che sta riscontrando. La maggior parte delle volte è per questo

    ovvio che poi, prima di chiamare la OpenRecordset del db...il db deve essere stato impostato correttamente ed aperto
    ok, claro.

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  8. #8
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Ci sono riuscito appunto dichiarando la variabile rs come DAO.Recordset!
    In effetti, la dichiarazione era fatta così anche nell'argomento della guida che avevo citato prima... no nci avevo fatto caso, ero troppo abituato a scriverlo senza il "DAO".

    In effetti il fatto che in Access2000 l'editor del codice sia esterno e che si debbano selezionare i Riferimenti mi ha un po' spiazzato. È una notevole differenza con Access97. E anche la guida è molto diversa...

    Comunque grazie, sono riuscito anche a risolvere i problemi di velocità di aggiornamento dei recordset che avevo qui!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.