View Full Version : [VB] Calcolo IVA e alcuni consigli
andreaxol
29-01-2004, 01:13
Ciao a tutti :)
Dovrei calcolare + 20% + 20% di un dato numero...mi direste come verrebbe il codice?
Non ho ancora ben assimilato il VB e quando devo mettere giù un calcolo non ci riesco...probabilmente non ho delle buone basi di matematica o non ho la testa per programmare.
Sapreste dove reperire sul web esempi di codice con le più comuni operazioni e funzioni matematiche (dal +-*: media, alle incognite e cose più serie) da applicare in VB?
Anche una guida per zucconi come me sarebbe ben accetta! (me la cavo con l' HTML, ma con VB e PHP nada...)
Grazie :)
andreaxol
29-01-2004, 16:27
Grazie :)
Questo nel caso dell' iva al 20%.
Da che calcolo esce 1,2?
Io dovrei fare il 20% di un dato prezzo e il risultato ancora + 20%
Scusa la mia ignoranza
Il 20% di un prezzo è pari al prezzo moltiplicato per 0,20...
Quindi aggiungere il 20% al prezzo significa:
prezzo + prezzo * 0,20 = prezzo * (1 + 0.20) = prezzo * 1.20...
Pre aggiungere 20% e poi un altro 20% semplicemente si rimoltiplica per 1.2 ;)
andreaxol
29-01-2004, 19:42
Originariamente inviato da cionci
Pre aggiungere 20% e poi un altro 20% semplicemente si rimoltiplica per 1.2 ;)
In effetti :p
+20% (*1,2) +20%(*1,2) è diverso da +40% (*1,4) vero?
Conosci sul web qualche guida facile facile sul VB che spieghi anche le nozioni fondamentali della programazione (array, cicli ecc...)?
Grazie :)
Originariamente inviato da andreaxol
+20% (*1,2) +20%(*1,2) è diverso da +40% (*1,4) vero?
Chiaro...
prezzo * 1.2 * 1.2 è diverso da prezzo * 1.4...
Infatti prezzo * (1.2 * 1.2) = prezzo * 1.44 ;)
andreaxol
29-01-2004, 23:42
Mi sapresti dire come implementare nel textbox il raggruppamento in cifre? (es. 1.000 anzichè 1000)
Grazie
Originariamente inviato da andreaxol
Mi sapresti dire come implementare nel textbox il raggruppamento in cifre? (es. 1.000 anzichè 1000)
Grazie
Private Sub Text1_Change()
Text1 = Format$(Text1, "#,###")
Text1.SelStart = Len(Text1)
End Sub
andreaxol
30-01-2004, 00:29
Originariamente inviato da matpez
Private Sub Text1_Change()
Text1 = Format$(Text1, "#,###")
Text1.SelStart = Len(Text1)
End Sub
Il mio codice è il seguente:
Private Sub cmdCalcola_Click()
txt20.Text = Round(txtInserDati.Text * 1.44, 2)
txt15.Text = Round(txtInserDati.Text * 1.38, 2)
txtDiff.Text = Round(txt20.Text - txt15.Text, 2)
End Sub
Come verrebbe, applicando quello che hai postato?
Grazie :)
Io pensavo che a te servisse una text box che quando premevi mettevi una cifra ti faceva il separatore :)
Se tu indenfi il raggruppamento alla pressione del tasto (dopo che ti ha fatto il calcolo) basta che fai così:
Private Sub cmdCalcola_Click()
txt20.Text = Round(txtInserDati.Text * 1.44, 2)
txt15.Text = Round(txtInserDati.Text * 1.38, 2)
txtDiff.Text = Round(txt20.Text - txt15.Text, 2)
txtDiff= Format$(txtDiff, "#,###")
End Sub
Se è la txtDiff che ti interessa modellare...
andreaxol
30-01-2004, 13:23
Io inserisco i dati nel txtInserDati e vorrei che si veda il separatore durante la "battitura" dei numeri. Poi quando clicco nel cmdcalcola vorrei il separatore anche nel txt15, txt20 e txtDiff
Scusa se non mi sono spiegato bene e grazie per l' aiuto!
Ora si che è tutto chiaro!
Fai così:
Private Sub txt20_Change()
txt20= Format$(txt20, "#,###")
txt20.SelStart = Len(txt20)
End Sub
Private Sub txt15_Change()
txt15= Format$(txt15, "#,###")
txt15.SelStart = Len(txt15)
End Sub
Private Sub txtDiff_Change()
txtDiff= Format$(txtDiff, "#,###")
txtDiff.SelStart = Len(txtDiff)
End Sub
andreaxol
30-01-2004, 14:04
Grazie :)
Ma la funzione round che fine fa?
Quanto sai di VB ?
Scusa pensavo che qlcina sapevi, mi sono espresso male :)
La parte di codice che hai messo tu nel comando _Click devi lasciarli li dov'è! Perchè tanto la formattazione viene fatta in un altro evento :D
Al massimo fai questa modifica:
Private Sub cmdCalcola_Click()
txt20.Text = Round(val(txtInserDati.Text) * 1.44, 2)
txt15.Text = Round(val(txtInserDati.Text) * 1.38, 2)
txtDiff.Text = Round(val(txt20.Text) - val(txt15.Text), 2)
End Sub
andreaxol
31-01-2004, 08:48
Grazie :)
Ultima cosa, poi basta :)
Come si fa tramite cmdbutton a far aprire un' altra finestra?
Per fare in modo che all' inserimento di 0 o di una lettera, compaia la scritta "inserisci solo numeri positivi"? (o una frase più sensata :D)
Ti ho fatto l'esempio...devi solo adattarlo!
Questo esempio nn permette l'inserimenti si altre cose tranne i numeri dallo 0 al 9, per cui niente simbolo -, niente caratteri, niente di niente!
andreaxol
31-01-2004, 13:29
Non me ne ero accorto...
Come avrai capito non sono un' aquila in VB :p
Grazie per l' aiuto :)
andreaxol
02-02-2004, 12:36
Se non ti dispiace, ti chiederei ancora due cose...
C' è un modo per allineare i numeri a destra del text box? Viene più comodo quando bisogna cancellare.
Nel codice non si potrebbe implementare una funzione invece di fare un evento change per ogni text box?
Grazie :)
Originariamente inviato da andreaxol
C' è un modo per allineare i numeri a destra del text box? Viene più comodo quando bisogna cancellare.
Si certo...nelle proprietà della textbox c'è appunto la voce Allignamento
Originariamente inviato da andreaxol
Nel codice non si potrebbe implementare una funzione invece di fare un evento change per ogni text box?
Si certo anche questo, cioè per spiegarmi meglio, nn puoi evitare l'evento change di una textbox..perchè altrimenti nn saresti nella programmazione guidata dagli eventi (come VB)!
Però per evitare la ripetizione di codice uguale puoi fare una cosa del genere:
Private Sub Text1_Change()
Call bho(Text1)
End Sub
Private Sub bho(ByVal txtAux As TextBox)
txtAux = Format$(txtAux, "#,###")
txtAux.SelStart = Len(txtAux)
End Sub
andreaxol
02-02-2004, 17:25
Questo è riferito all mio codice (txtInserDati, txt15, txt20, txtDiff) o è un esempio fittizio?
Devi mettere la funzione "bho" in tutti gli eventi change delle text dopra riportate! :p
andreaxol
02-02-2004, 17:55
Non è che conosci una guida semplice per chi si avvicina al VB, che spiega le cose fondamentali ?
:p
Prova a vedere se questo ti garba:
http://programmazione.html.it/visualbasic/index.html
andreaxol
02-02-2004, 23:21
Originariamente inviato da matpez
Prova a vedere se questo ti garba:
http://programmazione.html.it/visualbasic/index.html
Grazie, corro a leggere :)
andreaxol
04-02-2004, 00:58
Ho letto le prime cose e sembra ottima per un neofita come me
Non mi resta che leggerla tutta (lunghina!) :p
Grazie di nuovo
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.