Errori programma utilizzando Access Runtime 2007

Anonimo
2010-08-09T07:38:45+00:00

Salve a tutti,

sto testando il mio progetto su un pc windows Xp professional con Access Runtime 2007 per valutare errori (...che ci sono) con la versione Runtime. Vado ad esporli:

  • su una txtbox non associata (che ha come origine controllo = Date() ) - si trova in una form non associata che uso come pannello comandi (su Runtime tale textbox visualizza**#nome?** e non la data attuale come nella versione con access 2007)
  • quando dal pannello comandi tramite un pulsante provo ad aprire una form che uso come protocollo interno, non apre la form e mi restituisce questo messaggio:Funzione non disponibile nelle espressioni. nell'espressione (((year([data_prot])) = year (date())) -il problema non si manifesta sul pc con access 2007
  • Nella Versione Runtime, inoltre, noto che il comando accmdzoombox non funziona, su altri forum ho letto che devo predisporre da me le form (è vera questa cosa?)
  • Inoltre aprendo la sezione Strumenti-Riferimenti nel progetto originale .accdb noto che non è presente la libreria Microsoft DAO 3.6 e quando provo a selezionarla e premere Ok mi dice:nome già utilizzato per modulo progetto o libreria degli oggetti esistente... e non l'aggiunge alla lista dei riferimenti. (Come mai???)

Vi sarei molto grato se riusciste ad aiutarmi, non riesco a venirni a capo.

Vi ringrazio e vi saluto

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2011-11-03T09:40:03+00:00

Ciao Franco,

le costanti di Word sono contenute nella libreria di Word, quindi se abbiamo tolto la libreria  per le ragioni già discusse, le cosanti non esistono più.

Al posto di modificare le costanti direttamente con i valori numerici, potresti creare un modulo Bas in cui inserire le tue costanti.

es..


Public Const My_wdReplaceAll = 2


poi vai a sostituire wdReplaceAll con My_wdReplaceAll nel tuo codice.

In questo modo il nome della costante ti ricorda il suo significato, cosa difficile da capire se usi solo i valori numerici.

ps. non so se c'è altro che devi modificare, solo il compilatore può dirlo :-)

Ciao

Giorgio Rancati

La risposta è stata utile?

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2010-08-16T19:00:13+00:00

Ciao Avatar77,

il problema che riscontri è riconducibile al riferimento di una o più librerie che non esistono nella macchina con Windows Xp.

Puoi elencare le librerie presenti nei riferimenti e di esse quelle di cui hai effettivamente bisogno ?

Per vedere i riferimenti premi ALT+F11 per paprire l'editoe VBA , poi premi Strumenti-->Riferimenti.

Per quanto riguarda la libreria DAO 3.6 non puoi aggiungerla perchè Access2007 aggiunge di default la nuova libreria "Microsoft Office 12.0 Access Database Engine Object Library", quindi rifiuta DAO 3.6 perchè sarebbe un doppione.

Ciao

Giorgio Rancati

La risposta è stata utile?

0 commenti Nessun commento

15 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2010-10-03T15:45:52+00:00

    Giuro: questa volta non ti ho cercato (mi sarei vergognato di ricorrere a te tutte le volte che ho un problema)

    Ti ho trovato per caso cercando la soluzione allo stesso problema du cui si parla qui; a questo punto ... non posso fare a meno di chiederti lumi (è il destino!).

    Sul mio pc (Windows 7 64bit - Access 2007), non ho problemi; sul pc della persona per cui sto sviluppando il sw (Windows XP - Access 2007), usando sia l'.accdb sia '.accdr, compariva il messaggio d'errore:


    "L'espressione Su click immessa come impostazione della proprietà di evento ha generato l'errore seguente: Funzione non disponibile nelle espressioni. nell'espressione della query 'Datediff("yyyy,[datanasc],date()'.

    *L'espressione non corriponde al nome di una macro, di una funzione, di un evento o di una macro.

    *Si è verificato un errore durante la valutazione di una funzione, di un evento o di una macro.


    NB: Datediff era in una query (NON "Su click"!); all'apertura della maschera (basata su tale query), l'errore impediva l'apertura della maschera.

    Chiaro che si trattava di un problema di Riferimenti a librerie (ma perchè SOLO per Datediff)?

    Per andare avanti, ho tolto la funzione dalla query. Successivamente l'ho rimesso e ha funzionato (non ricordo cosa è cambiato).

    Però, l'utente ha dovuto formattare e reinstallare tutto; oplà, è ricomparso il malfunzionamento!

    NON PUO' VINCERE UNA STUPIDA MACCHINA!

    Fra l'altro DEVO CAPIRE: l'applicazione Access verrà data in uso ai coordinatori regionali dell'associazione, quindi DEVE funzionare indipendentemente dalla versione di Windows.

    Verrà distribuita come .accdr + runtime. Se preparo un "pacchetto", Creazione guidata pacchetti è in grado di "portarsi dietro" quello che serve oppure in qualche modo evitare il problema?

    Grazie, Giorgio!

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2010-08-17T07:31:40+00:00

    Grazie della risposta Giorgio, siete come sempre molto utili per darci una mano quando ne abbiamo bisogno.

    >Puoi elencare le librerie presenti nei riferimenti e di esse quelle di cui hai effettivamente bisogno ?

    Nel pomeriggio posto le librerie presenti nei riferimenti.

    >Nella Versione Runtime, inoltre, noto che il comando accmdzoombox non funziona, su altri forum ho >letto che devo predisporre da me le form (è vera questa cosa?)

    Credo di aver accertato che effettivamente accmdzoombox non funziona nella versione runtime, per questo l'ho sostituita con successo utilizzando un metodo preso dal SitoComune-Forms-3.54 Zoom su una casella di testo, la quale utilizza una form apposita per gestire lo zoom della textbox....avendo più di una textbox con pulsanti Zoom nel mio programma, l'ho riadattata utilizzando una variabile globale di tipo integer a facendogli assumere un valore diverso ad ogni "PulsanteZoom" premuto: in questo modo da codice gestisco il riferimento della FormZoom all'apertura in base alla textbox cui deve fare riferimento (Espongo questo nel caso qualcuno avesse bisogno di questo tipo di soluzione).

    >Per quanto riguarda la libreria DAO 3.6 non puoi aggiungerla perchè Access2007 aggiunge di default la >nuova libreria "Microsoft Office 12.0 Access Database Engine Object Library", quindi rifiuta DAO 3.6 >perchè sarebbe un doppione.

    Grazie anche per questo, non lo sapevo, anzi pensavo che alcuni di quei problemi potessero dipendere da questa cosa.

    Vi dò ulteriori info a breve

    Buona giornata a tutti

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2010-08-13T08:44:29+00:00

    Nessuno ha qualche suggerimento?

    Vi ringrazio

    La risposta è stata utile?

    0 commenti Nessun commento