+ Rispondi al Thread
Pagina 1 di 2 12 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: DLookUp - sintassi dei criteri.

  1. #1
    ROSARIO54 non è in linea Novello
    Post
    2

    DLookUp - sintassi dei criteri.

    Buongiorno. Premetto che sono un neofita e chiedo scusa subito se non sarò chiaro nell’esporre il mio problema.
    Ho deciso di creare una procedura in access per monitorare e analizzare le spese di casa.
    Ho creato una Tabella “CodificaSpese” per standardizzare la descrizione delle spese che voglio registrare. Esempio:

    COD1 VOCE1 COD2 VOCE2 COD3 VOCE3
    01 Auto 01 Panda 010101 Bollo auto
    01 Auto 01 Panda 010102 Carburante
    01 Auto 02 Twingo 010201 Bollo auto
    02 Casa 01 Utenze 020101 Acqua
    02 Casa 01 Utenze 020102 Luce
    02 Casa 02 Lavori 020103 Gas
    e cosi via...

    Poi ho creato una Maschera “MInserimentoSpesa” che ha come origine di controllo la Tabella “Spese” con i medesimi campi più i campi DATA, IMPORTO e NOTE.

    Grazie ad una casella combinata estraggo dalla Tabella “CodificaSpese” COD1, VOCE1, COD2, VOCE2, COD3 e VOCE3 ma riesco ad inserire in Tabella “Spese” soltanto COD3 (valore univoco) mentre mi è impossibile memorizzare i contenuti di COD1, VOCE1, ecc. nei rispettivi campi.

    Ho provato con DLookUp("VOCE3";"CodificaSpese";"COD3 =" & ("COD3")) ma mi restituisce sempre il valore VOCE3 del primo record (in questo caso Bollo auto).

    Comprendo perfettamente che la mia esposizione è alquanto contorta; potete darmi una mano ugualmente?
    Grazie

  2. #2
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    15,626
    Prima cosa sposto la discussione nella sezione di dettaglio Access e non Generica di Office.
    Stai cercando di usare Access come faresti con Excel... quindi di base non va bene.
    Le.spese dovresti vederle come un elenco movimenti bancari...
    I movimenti devono avere determinate caratteristiche... che poi sono CAMPI.
    Quindi definisci l'oggetto del movimento che peschi da una tabella OggettiSpesa... qui metti Automobile/Utenze/ecc....
    Ogni Oggetto potrà avere delle Causali di spesa... cheinserirai nella tabella Causali...
    Automobile ad esempio avrà Bollo/Carburante/Assicurazione
    Utenza invece avrà Luce/Gas/Acqua/....
    ecc
    se pensi che 1 causale può essere associata sempre e solo ad 1 Oggetto allora farai una relazione in 2°Forma Normale definita 1-M altrimenti dovrai passare alla 3°FORMA NORMALE per ottenere una relazione M-M... decisamente meno agevole che richiede una 3° tabella di relazione combinazioni.

    Ora siccome in un bilancio domestico ci sono USCITE ed ENTRATE devi avere un campo che consente di sapere se sia entrata oppure uscita... altrimenti vestirà i il segno +/-

    Spero tuttavia ti sia chiaro come si gestiscono le relazioni tra le tabelle di conseguenza le chiavi Primarie ed Esterne e gli indici... se non è così siamo in estrema difficoltà ad aiutarti...
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

  3. #3
    ROSARIO54 non è in linea Novello
    Post
    2
    Anzitutto grazie Alex per la risposta immediata.
    Capisco che il mio "rozzo" approccio ad access non mi porterà lontano ed - in effetti - non volevo andare tanto lontano. Nel mio piccolo avevo un'idea abbastanza precisa di quello che volevo fare: realizzare una tabella con codici e voci prestabiliti ove inserire importi e date. Poi con varie query avrei estrapolato i dati per periodo, voce di spesa, dettaglio ... e così via fino a fare dei raffronti tra di essi per periodo.
    Tu mi inviti a riconsiderare l'architettura del progetto, cosa che farò indubbiamente, tuttavia una "dritta" sulla sintassi mi avrebbe risolto il problema nell'immediato.
    PS. Per le Entrate non ci sono problemi: là proprio non mi serve un programma...

  4. #4
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    15,626
    Il problema vero è che non ti serve affatto il dlookup che è frutto solo di un errore di concetto o di conoscenza... in quanto i dati dovrebbero essere già contenuti nella Combobox, ad aver sviluppato come Access richiede, non insisto su questo in quanto serivrebbe la possibilità di confronto tecnico.
    Immagino tuttavia che anche questa mia affermazione rischia di finire come la prima... ovvero inutile alla soluzione "nell'immediato" che pensi essere sufficiente.
    Personalmente mi fermo perchè non trovo utile nè per te, ricevere indicazioni su come si sviluppa in modo corretto dal momento che non soddisfano l'esigenza immediata, nè tanto meno al forum per eventuali lettori ai quali ricevere indicazioni di come sbagliare volutamente credo sia da evitare....

    Riconsidera l'idea di usare Excel perché a mio avviso potresti avere meno difficoltà.
    Ultima modifica di @Alex; 24-08-2017 07:36 
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

  5. #5
    bruce.26 non è in linea Scolaretto
    Post
    75
    "Per agganciarmi al titolo del thread" spesso mi succede di andare a tentativi nello scrivere una righetta di codice o una semplice espressione perchè hai voglia a vedere la guida di office, sempre a litigare per scrivere correttamente la sintassi; oltre la guida office non c'è un bel glossario o una bella guida per quando si ha un dubbio del genere?

  6. #6
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    15,626
    Non capisco cos tu stia chiedendo oltre alla guida che spiega istruzione per istruzione.
    La sintassi poi prevede SOLO 3 tipologie di forma date dal Tipo di Campo.... e sono sempre quelle...
    Numeri
    Testo
    Date

    Non mi pare serva altro.... oltretutto il generatore di espressioni compone la sintassi al tuo posto, devi solo ricordare la formattazione di tipo...
    Di cosa senti di avere bisogno ancora...?
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

  7. #7
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Luogo
    Roma
    Post
    15,902
    Blogs
    5
    Un glossario? Programmare con un glossario? Stiamo scherzando ...?
    Avvisi generali e importanti, a pena CHIUSURA thread e/o BAN
    Il crossposting è vietato.
    Le richieste di "pappa pronta" sono vietate.
    Utilizzate i tag CODE per il codice.
    Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread.
    Utilizzare sempre i PM per comunicare con i moderatori.
    Non mi contattate in PM per problemi di software, usate il forum

  8. #8
    bruce.26 non è in linea Scolaretto
    Post
    75
    Ho detto glossario per intendere un indice che ti guidi nelle sintassi, ad esempio sto scrivendo un espressione in vba ma sbaglio l' utilizzo di parentesi,virgolette o altra regola di sintassi, premo F1 per vedere la guida di office e non vedi una spiegazione chiara specie in base al contesto ma ti spiega il funzionamento, ti dice di indicare argomento, criteri etc ma alla fine come in questo thread se uno deve scrivere un espressione o altro va a cercare su internet perchè su office è poco chiaro

  9. #9
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Luogo
    Roma
    Post
    15,902
    Blogs
    5
    Ci sono i libri per queste cose!
    Avvisi generali e importanti, a pena CHIUSURA thread e/o BAN
    Il crossposting è vietato.
    Le richieste di "pappa pronta" sono vietate.
    Utilizzate i tag CODE per il codice.
    Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread.
    Utilizzare sempre i PM per comunicare con i moderatori.
    Non mi contattate in PM per problemi di software, usate il forum

  10. #10
    bruce.26 non è in linea Scolaretto
    Post
    75
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    Ci sono i libri per queste cose!
    me ne direste uno che magari me lo procuro in .pdf?

+ Rispondi al Thread
Pagina 1 di 2 12 ultimoultimo

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi