Incrementare valore txt sulla scelta di un'altra txt

di il
5 risposte

Incrementare valore txt sulla scelta di un'altra txt

Ciao, è la prima volta che scrivo e non ho molta dimestichezza con access. Dovrei risolvere questo problema:
In un Form ho due caselle di testo:
AnnoIscrizione - testo
NumeroProgressivo - numerico
Vorrei che quando inserisco AnnoIscrizione, il NumeroProgressivo aumenti di 1 a secondo dell'anno inserito in questo modo:
2011 - 1
2011 - 2
2012 - 1
2013 - 1

5 Risposte

  • Re: Incrementare valore txt sulla scelta di un'altra txt

    Ciao,
    approfondisci la conoscenza delle funzioni di aggregazione sui domini, prova con :

    Me.NumeroProgressivo = DMax("Val(Nz(NumeroProgressivo, '0'))", "TuaTabella", "AnnoIscrizione='" & Me.AnnoIscrizione & "'") + 1

    un saluto.
  • Re: Incrementare valore txt sulla scelta di un'altra txt

    Mi chiedo il perchè il Campo AnnoIscrizione sia di tipo TESTO....???

    Una precisazione al suggerimento di [Goku] che tecnicamente è corretto(da modificare nel caso il campo AnnoIscrizione fosse Numerico), ma vedrei meglio se fosse applicato alla proprietà VALORE DI DEFAULT in modo da generarlo solo se effettivamente il Record viene inserito.
  • Re: Incrementare valore txt sulla scelta di un'altra txt

    Alla proprietà dopoaggiornamento del campo AnnoIscrizione ho inserito quanto suggerito.
    Me.NumeroProgressivo = DMax("Val(Nz(NumeroProgressivo, '0'))", "TuaTabella", "AnnoIscrizione='" & Me.AnnoIscrizione & "'") + 1
    La numerazione, effettivamente si incrementa, ma solo se trova già un numero.
    Ho provato a cambiare il formato del campo NumeroProgressivo da testo a numerico, ma il comportamento rimane lo stesso.
  • Re: Incrementare valore txt sulla scelta di un'altra txt

    Ciao,
    perché non trova il record nella tabella, prima della dmax :
    DoCmd.RunCommand acCmdSaveRecord
    saluti.
  • Re: Incrementare valore txt sulla scelta di un'altra txt

    Grazie, funziona perfettamente
Devi accedere o registrarti per scrivere nel forum
5 risposte