Come risolvere “Non A Segnalibro valido. (Errore 3159)” In Access?

Ottenere il messaggio ” Run-time error ‘3159’: Not a valid bookmark” in Access quando si lavora con i recordset nel codice VBA? Se è così, dai un’occhiata a questo blog. In questo post troverai le possibili cause e le soluzioni praticabili per correggere un segnalibro non valido. (Errore 3159). Qui, imparerai anche a conoscere i competenti Access Riparazione Attrezzo che può aiutarti a correggere l’errore mostrato di seguito se si verifica a causa della corruzione dei record del database di Access.

Non A Segnalibro valido. (Errore 3159)

Voto Eccellente su Trustpilot
Strumento di Riparazione Database MS Access Gratuito
Ripara i file di database MDB e ACCDB corrotti e recupera facilmente tabelle, query, indici e record di database eliminati. Prova ora!
Scarica
Facendo clic sul pulsante Download sopra e installando Stellar Repair for Access (14.8 MB), riconosco di aver letto e accettato il Contratto di licenza per l'utente finale e la Politica sulla riservatezza di questo sito.

Soluzioni veloci:

  1. Riprodurre un errore
  2. Ripristino del vecchio database nel nuovo database
  3. Eseguire il comando Decompila
  4. Utilità integrata compatta e ripara
  5. Prova lo strumento di ripristino e ripristino degli accessi

Ma prima di procedere verso le correzioni, sappiamo qualcosa su questo errore insieme alle cause principali.

Che cos’è l’errore di Access 3159: non è un segnalibro valido?

Quando si lavora con MS Access VBA, la proprietà del segnalibro del recordset viene impostata con una stringa non valida a causa della quale si verifica 3159 non un segnalibro valido.

Oggetto Recordset basato completamente sulle tabelle del motore di database di Microsoft Access. Il valore della proprietà Bookmarkable è true ed è possibile utilizzare la proprietà bookmark con quel Recordset. La proprietà del segnalibro del recordset imposta o restituisce i segnalibri che identificano in modo univoco il record corrente nell’oggetto Recordset.

Tuttavia, ci sono vari motivi dietro il verificarsi di questo peculiare errore di Access. Alcuni di loro sono selezionati qui:

  1. Quando l’utente aggiunge ai segnalibri una stringa che non è stata salvata dalla lettura precedente della proprietà del segnalibro.
  2. Tentativo di aprire un file di database di Access danneggiato.
  3. Quando un utente utilizza la proprietà bookmark degli oggetti recordset per contrassegnare una stringa non valida.

Quindi, poiché conosci i motivi, ora è il momento di risolvere questo errore utilizzando le migliori correzioni menzionate nella sezione successiva.

Soluzioni per correggere “Non A Segnalibro valido. (Errore 3159)” In Access

Segui i seguenti metodi passo-passo per risolvere l’errore di runtime di MS Access 3159 non un segnalibro valido.

Soluzione 1- Riprodurre un errore

Per riprodurre l’errore Access Not A Valid Bookmark Error, gli utenti devono creare la tabella in modo che in VBA possano essere in grado di creare recordset. Dopo aver fatto clic sul pulsante del modulo, verrà generato un errore 3159. Successivamente, devi eseguire il codice seguente in un modulo:

Codice per riprodurre l’errore:

Option Compare Database

Private Sub Command0_Click()

Dim rst As Recordset

Dim str As String

‘Error 3159 Not a valid bookmark.

Set rst = CurrentDb.OpenRecordset(“Table1”, dbOpenDynaset)

str = rst(0)

rst.Bookmark = str

End Sub

Non A Segnalibro valido. (Errore 3159)

In una finestra di messaggio di errore, devi:

  • Fare clic sull’opzione Debug
  • Quindi, usa una corda precisa.
  • Successivamente, aggiornare una stringa e salvarla.

Soluzione 2- Ripristino del vecchio database nel nuovo database

A volte il motivo della corruzione delle relazioni o dei record dei file di Access è anche l’eccessiva archiviazione dei file nel database di Access. A quel punto è obbligatorio per gli utenti creare un nuovo file ed esportare i dati dai database danneggiati. Se non sai come eseguire questa attività, segui questi passaggi:

  • Prima di tutto, avviare MS Access e selezionare il database vuoto presente in MS Access e scegliere il pulsante OK.
  • Assegnare un nome al nuovo database e selezionare un percorso file e utilizzare l’opzione Crea.
  • Toccare il menu file, quindi passare ai dati esterni e scegliere Importa
  • Toccare il menu file, passare ai dati esterni e scegliere l’importazione.
  • Sfogliare e selezionare il database danneggiato e toccare l’opzione di importazione.
  • Se gli utenti non ottengono l’oggetto Finestra che mostra l’importazione, il processo non può essere ripristinato nel database di Access.
  • Effettuare una selezione per Seleziona su tabelle presente sopra le finestre Importa oggetti e scegliere Seleziona tutto.
  • Ripetere per la scheda sullo schermo e premere il pulsante OK nel caso in cui il processo finisca.

Leggi anche: Correggi l’errore di runtime 3047- Il record è un Access troppo grande

Soluzione 3- Esegui il comando Decompila per correggere Non A Segnalibro valido. (Errore 3159)

Il comando Decompila è un altro modo efficace che può essere provato per risolvere come correggere un segnalibro non valido in Access. Tuttavia, questo comando viene utilizzato principalmente per risolvere errori e problemi relativi ai progetti VBA.

Seguire i passaggi seguenti per eseguire un comando Decompila:

1- Identifica il tuo percorso MS Access. Per questo, vai su Esplora risorse e cerca il programma Microsoft Access.

2- Quindi, premi i tasti Win + R insieme per aprire la casella Esegui, digita CMD e premi Invio per aprire un prompt dei comandi.

Non A Segnalibro valido. (Errore 3159)

3- Ora puoi vedere la finestra di cmd.exe mostrata.

Non A Segnalibro valido. (Errore 3159)

4- Lì, devi inserire il comando seguente (comando Decompila):

C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE /decompile

5- A questo punto, apri il database di Access >> fai clic su Crea >> Modulo.

6- Ora vai all’opzione Debug > Compila.

7- Infine, fai clic sul menu File e quindi sull’opzione Salva.

Non A Segnalibro valido. (Errore 3159)

Questo dovrebbe correggere correttamente l’errore 3159 nel database di Access.

Soluzione 4- Utility integrata compatta e ripara

Prima di utilizzare lo strumento integrato compatto e ripara, gli utenti dovrebbero tenere a mente queste cose.

  • Eseguire sempre un backup dei file.
  • Compatta e ripara automaticamente i database.
  • Annotare la tabella degli errori di ripristino del sistema.
  • Ottenere l’Access al database per utilizzare il comando Compatta e ripristina database.
  • Ottenere autorizzazioni sufficienti per eseguire funzioni compatte e di riparazione.

Lo strumento di utilità integrato funziona in due modi:

Modo 1- Quando il database viene aperto dall’utente:

  • Fare clic sulla scheda File ⇒ Opt for Info ⇒ Selezionare l’opzione Compatta e ripara database

Non A Segnalibro valido. (Errore 3159)

Nota: in questo caso, gli altri utenti stanno utilizzando il file del database, quindi questa funzione non può essere eseguita.

Modo 2- Il database non è stato aperto da nessun utente

  • Innanzitutto, avvia MS Access ma non tentare di aprire i file del database in esso contenuti
  • Puntare verso info ⇒ Fare clic su Compatta e ripara database
  • Nella finestra di dialogo del database da compattare, navigare e fare doppio clic sui database da riparare.

Soluzione 5- Prova lo strumento di riparazione e ripristino degli accessi

Per risolvere questo particolare errore di query di Access non è un segnalibro valido, devi provare lo strumento professionale, ad es. Access Riparazione E Recupero attrezzo. Poiché questo strumento è specificamente progettato per gestire i problemi di corruzione del database di MS Access. Inoltre, il software recupera efficacemente i file MDB e ACCDB inaccessibili in modo accurato da database MS Access corrotti o danneggiati.

Le notevoli caratteristiche salienti del software Access Riparazione E Recupero sono:

  • Semplifica il recupero di file MDB o ACCDB da qualsiasi tipo di database corrotto
  • Recupera accuratamente la struttura completa della tabella e la più importante di tutte le strutture di dati interni come chiavi primarie, numerazione automatica e dimensioni dei campi
  • Recupera rapidamente relazioni tra tabelle, dati OLE, dati Memo, ecc.
  • Prima di avviare il processo di recupero è possibile visualizzare l’anteprima dei dati recuperabili.
  • Inoltre, supporta il ripristino dei file .accdb/.mdb del database protetto da password.
  • Supporta il ripristino dall’intero database MS Access versione 95/97/2000/XP/2003/2007/2010/2013/2016/2019.

* Facendo clic sul pulsante Download sopra e installando Stellar Repair for Access (14.8 MB), riconosco di aver letto e accettato il Contratto di licenza per l'utente finale e la Politica sulla riservatezza di questo sito.

Passaggi per utilizzare lo strumento di riparazione degli Access

access-repair-main-screen-it-1
access-select-database-it-2
access-repairing-it-3
access-repairing-completed-it-4
access-preview-it-5
access-save-location-it-6
access-saving-it-7
previous arrow
next arrow

Conclusione:

In questo post, ho elencato tutte le possibili soluzioni per risolvere questo fastidioso messaggio di errore non un segnalibro valido. (Errore 3159). Quindi, prova le correzioni manuali se sei sicuro di poterle eseguire correttamente, altrimenti si consiglia di utilizzare la soluzione automatica, ad es. Access Riparazione E Recupero.

Grazie per aver letto!

Hai ancora problemi? Risolvili con la Stellar riparazione per Access:

Questo software garantisce riparazione e recupero di senza soluzione di continuità del database ACCDB e MDB. Esso ripristina tutti gli oggetti tra cui tabelle, report, query, record, moduli e indici insieme a moduli, macro, ecc. Fissare Microsoft Access problemi di ora in 3 semplici passaggi:

  1. Scarica Stellar Access database riparazione strumento rated ottima su Cnet.
  2. Fai clic sull'opzione Sfoglia e Cerca per individuare il database di Access corrotto.
  3. Fai clic su Ripara Pulsante per riparae visualizzare in anteprima gli oggetti del database.

Pearson Willey è uno scrittore di contenuti di siti Web e lungo-forma pianificatore di contenuti. Oltre a questo, è anche un avido lettore. Quindi sa benissimo come scrivere un contenuto accattivante per i lettori. Scrivere è come un vantaggio crescente per lui. Ama esplorare le sue conoscenze su MS Access e condividere blog tecnici.