Ciao carissimo ghost sono al corrente delle funzioni del tipo CLng – CStr – CInt ecc.,
evidentemente per essere troppo sintetico onde evitare di essere noioso nella spiegazione,
ho finito d’essere poco comprensibile. I valori da te citati, dblValore1 = 3.49 e dblValore2 = 4.57
non sono numeri fissi ma gli oggetti cmIpt , txtRavvedimentoOperoso , txtInteressiMorattori, cboEmonumenti e cboImpostaDiBollo sono Variabili, come dal codice sotto menzionato
Private Sub cboImpostaDiBollo_LostFocus()
Frame14.Caption = \"--------TOTALE-------\"
‘=====Totale senza arrotondamento obbligatorio trascriverlo==
txtTotale.Text = CStr((cmIpt.Text) * 1 + _
(txtRavvedimentoOperoso.Text) * 1 + (txtInterMorat.Text) * 1 + _
(cboEmonumenti.Text) * 1 + (cboImpostaDiBollo.Text) * 1)
‘ ==========arrotondamentoX eccesso================
If (CStr(txtTotale.Text) <= 0.49) Then
txtTotale.Text = Round((cmIpt.Text) * 1 + _
(txtRavvedimentoOperoso.Text) * 1 + (txtInterMorat.Text) * 1 + _
(cboEmonumenti.Text) * 1 + (cboImpostaDiBollo.Text) * 1)
Else
‘ ==========arrotondamentoX difetto================
If (CStr(txtTotale.Text) >= 0.49) Then
txtTotale.Text = Round((cmIpt.Text) * 1 + _
(txtRavvedimentoOperoso.Text) * 1 + (txtInteressiMorattori.Text) * 1 + _
(cboEmonumenti.Text) * 1 + (cboImpostaDiBollo.Text) * 1)
End If
End If
End sub
‘=======================================
Nella Circolare del Ministro dei Trasporti, l’arrotondamento non deve scomparire ma dovrebbe essere conteggiato (tolto o aggiunto) negli oggetti txtRavvedimentoOperoso e txtInteressiMorattori, come da esempio qui sotto:
Se non ci sono sanzioni 150,81 arrotondato 151,00 (questo con il codice sopra citato ci sono riuscito).
Se ci sono sanzioni ;
es. Per difetto
cmIpt +150,81
txtRavvedimentoOperoso + 45,24
txtInteressiMorattori + 2,10
-------------------------------------------
txtTotale =198,15
*****************************
cmIpt +150,81
txtRavvedimentoOperoso + 45,19(-0,05) non riesco
txtInteressiMorattori + 2,00(-0,10) non riesco
---------------------------------------------------
txtTotale =198,00(-0,15) arrotondamento riuscito
Nel caso di difetto, il totale che compare nel txtTotale 198,15 è arrotondato a 198,00, l’eccesso di 0,15 cent. dovrebbe essere detratto - 0,10 cent al txtInteressiMorattori perché txtInteressiMorattori andrebbe sotto ai 2,00 Euro e, i rimanenti 0,05 cent andrebbero essere tolti al txtRavvedimentoOperoso.
=====================
es. Per eccesso
cmIpt +199,35
txtRavvedimentoOperoso + 59,80
txtInteressiMorattori + 5,45
-------------------------------------------
txtTotale =264,60
*****************************
cmIpt +199,35
txtRavvedimentoOperoso + 59,80
txtInteressiMorattori + 5,45(+0.40) non riesco
---------------------------------------------------
txtTotale =265,00(+0,40)arrotondamento riuscito
Come noterai, nell’esempio per eccesso, il totale che compare nel txtTotale 264,60 è arrotondato a 265,00, l’eccesso di 0,40 cent. deve essere aggiunto al txtInteressiMorattori.
Per quanto riguarda il databaseho provato a progettarlo ma mi sono fermato al momento di caricare il database sul form con l'oggetto CommonDialog e ViewList, ma questa è un'altra storia, se vuoi nu altro giorno ci faremo due chiacchiere.
Spero di essere stato più chiaro e mi scuso per la noiosità della spiegazione, ti ringrazio per la gentile pazienza e per il tempo che mi dedichi.