Le query VBA sono utilizzate per interagire con il database di Access. Può utilizzare queste query per eseguire varie operazioni, ad esempio selezionare, recuperare, manipolare o inserire dati nei file del database Access. A volte possono verificarsi degli errori quando si utilizzano le query VBA. L’errore 3183 “La query non può essere completata” è uno degli errori VBA. Se questo messaggio di errore appare sullo schermo, la sua applicazione potrebbe bloccarsi durante l’esecuzione dei progetti VBA, interrompendo il suo lavoro. Di seguito condivideremo con lei alcuni metodi semplici ed efficaci per risolvere questo errore. Ma prima di risolvere questo errore, cerchiamo di capire quali sono le sue cause.
Perché si verifica l’errore di accesso “La query non può essere completata”?
L’errore 3183 – “Impossibile completare la query” può verificarsi quando utilizza il codice VBA in Access. Può verificarsi quando importa o esporta un file di database da o verso un altro database, ad esempio un database SQL. Può anche verificarsi se la dimensione del risultato della query supera la dimensione massima di un file di database (2 GB) o se lo spazio di archiviazione temporanea sul disco rigido del sistema non è sufficiente per salvare il risultato della query. L’errore può verificarsi anche se utilizza le colonne di ricerca in Access per visualizzare i valori di una tabella correlata. Di solito si verifica quando ci sono molte tabelle con relazioni multiple in un file di database.
Di seguito troverà alcune altre cause dell’errore:
- Se le query o le macro sono danneggiate.
- Impostazioni errate per la macro Accesso.
- Se utilizza query complesse che includono tabelle multiple, join, ecc.
- Non dispone delle autorizzazioni necessarie per accedere alla tabella a cui fanno riferimento le sue query.
- Nomi di campo mancanti o errati o altri errori di sintassi nelle query SQL.
- Le relazioni non sono definite correttamente nelle tabelle o nelle query.
- Tipi di dati di SQL Server incompatibili nel codice.
Metodi per risolvere l’errore “La query non può essere completata” in MS Access
L’errore 3183 può verificarsi se ci sono incongruenze tra i tipi di dati Access e i tipi di dati SQL nelle query. Di solito si verifica quando il suo database contiene query che richiedono la conversione dei dati da un tipo all’altro. Si assicuri quindi di utilizzare tipi di dati Access compatibili con i tipi di dati SQL. Può confrontare i tipi di dati di Access e di SQL Server per risolvere il problema con il tipo di dati nella query. Se l’errore persiste, segua i metodi seguenti.
Metodo 1: controllare e regolare le impostazioni della macro di accesso
L’errore 3183 – “La query non può essere completata” in Access può verificarsi a causa di impostazioni macro disattivate. Può provare a modificare le impostazioni macro per risolvere l’errore. Ecco i passaggi:
- Apra il file del database desiderato.
- Vada su File > Opzioni.
- Nelle opzioni di accesso, clicchi su Centro Fiducia e poi su Impostazioni del Centro Fiducia.
- Nella finestra del Centro Fiducia, selezioni l’opzione Impostazioni macro e poi controlli le opzioni sotto Impostazioni macro.
- Selezioni l’opzione “Attiva tutte le macro” e poi clicchi su OK.
Metodo 2: creare un nuovo database
Creare un nuovo database Access e importare tutte le tabelle e le relazioni dal database originale in questo database può aiutare a risolvere l’errore 3183. Questo metodo è utile se ci sono incongruenze nel database. Ecco i passaggi per farlo:
- In Microsoft Access, vada su File, clicchi sull’opzione Nuovo e clicchi su Database vuoto.
- Assegni un nome al database e lo salvi.
- Ora clicchi sull’opzione Dati esterni nel nuovo database e poi su Accesso.
- Si rechi nella posizione in cui si trova il database desiderato e lo selezioni.
- Selezioni l’opzione “Importa tabelle, query, moduli, rapporti, macro e moduli nel database corrente“. Clicchi su OK.
- Nella finestra Importa oggetti, selezioni i singoli oggetti (query, macro, ecc.) che desidera importare o clicchi sull’opzione Seleziona tutto. Poi clicchi su OK.
Dopo aver importato tutti gli oggetti, ricrea tutte le query. Ora verifichi se il problema è stato risolto. In caso contrario, segua il metodo successivo.
Metodo 3: ottimizzare le dimensioni del database
MS Access supporta file di database con una dimensione massima di 2 GB. Un file di database che supera il limite di dimensione di 2 GB può portare al messaggio “La query non può essere completata. La dimensione del risultato della query è superiore alla dimensione massima di un database (2 GB), oppure lo spazio di memoria temporanea sul disco rigido non è sufficiente per salvare il risultato della query”. Può gestire il file del database sovradimensionato per risolvere il problema. Si assicuri anche che l’unità in cui si trova il suo database abbia uno spazio di archiviazione sufficiente.
Metodo 4: controllare le autorizzazioni del database
A volte l’errore 3183 può verificarsi anche se cerca di creare query in un database per il quale non dispone di autorizzazioni sufficienti. Può controllare e modificare le autorizzazioni del database per risolvere questo problema.
Metodo 5: controllare le query nel codice VBA
Potrebbe anche ricevere l’errore Access 3183 – “La query non può essere completata” se c’è un problema con il codice VBA che sta cercando di eseguire. Anche un piccolo errore nelle espressioni o dichiarazioni SQL può causare un problema. Può controllare la sintassi delle query e dei campi di riferimento della query e cercare di correggerli (se c’è un problema).
Metodo 6: Comprimere e riparare il database
L’errore “Impossibile completare la query” può verificarsi se le dimensioni del database sono troppo grandi o se il database è danneggiato. In tal caso, può utilizzare l’utility integrata di Microsoft – Compress and Repair per comprimere e riparare il database. Per utilizzare questa utility, esegua i seguenti passi:
- Innanzitutto, si assicuri che il file del database interessato non sia aperto.
- Quindi apra la sua applicazione Access. Nella pagina Modelli, faccia clic su Database vuoto.
- Clicchi su File e poi selezioni Chiudi.
- Clicchi su Strumenti database > Compatta e ripara il database.
- Nella finestra “Database da comprimere”, scorra verso il basso per selezionare il database che desidera comprimere e riparare. Clicchi su Comprimi.
Il database compresso e riparato viene salvato esattamente nella stessa posizione del file del database originale.
Lo strumento di compressione e riparazione può fallire se il file del database è gravemente danneggiato. In questa situazione, può utilizzare strumenti di riparazione di Access come Stellar Repair for Access. Lo strumento è specificamente progettato per riparare i file ACCDB/MDB gravemente danneggiati. Lo strumento estrae record, tabelle, moduli, query, macro e altri componenti dal file di database danneggiato e li salva in un nuovo file di database con assoluta precisione e integrità. Può scaricare la versione demo del software per vedere in anteprima i dati recuperabili nel file di database danneggiato. Il software è compatibile con tutte le edizioni di Windows, compreso il più recente Windows 11.
Infine
L’errore 3183 – “Impossibile completare la query” in Access può verificarsi a causa di query errate o corrotte, database di grandi dimensioni e altro ancora. Può provare i metodi sopra descritti per risolvere l’errore. Se il database è corrotto, può ripararlo con pochi clic utilizzando Stellar Repair for Access. Si tratta di uno strumento avanzato con un’interfaccia user-friendly che consente di recuperare tutti i dati dal file di database Access corrotto senza modificare la formattazione originale.
Was this article helpful?