Raffaele91 ha scritto:
Ciao,
hai ragione l'anno si sposta in automatico e per la data fine mese sucessivo ho usato questa formula che funziona:
=dateserial(year([date]);month([data])+2;0)
praticamente impostando il giorno con valore "0" mi risulta l'ultimo giorno del mese. PERFETTO!!!!
Ora mi sto assillando sull'ultimo problema....
Questa formula l'ho immessa in una casella di testo di una maschera, il problema è che funziona solamente se la scrivo in "finestra delle proprietà"/"dati"/"origine controllo"
ma io vorrei che questa casella di testo della maschera fosse collegata alla tabella dati di origine; così che i dati che vengono immessi mi risultino anche nella tabella, ma mi è impossibile farlo perchè la formula la scrivo in "origine controllo" dove dovrei mettere invece la casella della tabella di riferimento; come posso fare?
Metti la funzione nell'evento AfterUpdate (Dopo Aggiornamento, nelle proprietà) del controllo che ha come origine la data della fattura. Occhio che VBA capisce solo l'inglese, quindi il separatore che sei abituato ad usare nelle varie interfacce grafiche in italiano, il puntoevirgola, in VBA è virgola, ma l'intellisense ti aiuterà suggerendoti cosa scrivere
Me!txtDataScadenza.Value = DateSerial(year(Me!txtDataFattura.Value),month(Me!txtDataFattura.Value)+2,0)
(scritta a memoria, non l'ho provata)
Nel tuo esempio usi [date] e [data] però sono pessimi, da dove spuntano? Spero non siano campi o controlli. Puoi cambiarli con qualcosa di meno ambiguo (nel senso che non corrisponde a qualche funzione o a qualche parola riservata, [Date] lo è sicuramente), tipo Dtaxxxx, già nelle tabelle?