|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Decimali con Visula Basic
Ciao a tutti, sto iniziando a programmare in Visual Basic quindi scusate se farò domande anche stupide o scontate tanto sono cose semplici. Quello ceh vorrei sapere è come "tagliare" a soli due numeri decimali un calcolo, mi spiego meglio: ho creato due textbox, in una scrivo un valore e nell'altra ho dato un'istruzione che mi scorpori il 20% di quel valore immesso quindi in alcuni casi mi da valori con dopo la virgola un numero periodico come ad esempio 16,666666666666666. Io vorrei che in automatico mi mettesse solo due decimali dopo la virgola e di conseguenza mi arrotondasse. Come dovrei fare? Grazie mille e tanti saluti
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
ISTRUZIONE: Round
Round(espressione, numcifredecimali) Restituisce un numero arrotondato in base al numero di cifre decimali specificato. ciaoooooooooo
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#3 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Ciao e grazie per la risposta, potresti farmi un esempio per favore? Scusa ma come ho detto sono proprio agli inizi, se mi puoi fare un esempio di una linea di codice ti sarei grato. Grazie e tanti saluti.
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Dim ciao as double
ciao=Round("16,666666666666666",2) msgbox ciao Ti torna un messaggio con 16.67
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#5 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Ciao e grazie di nuovo per la risposta. non ho ancora capito bene dove devo mettere l'istruzione, ti faccio vedere che istruzioni ho dato io per farmi calcolare i valori ad un commandbutton:
Private Sub Command1_Click() If Text1.Text = "" Then MsgBox "Devi inserire un valore nel campo valore", vbCritical, "Campo valore vuoto" Else Text2.Text = Text1.Text * 100 / 120 Text3.Text = Text1.Text * 20 / 120 Text4.Text = Text2.Text * 100 / 125 End If End Sub Grazie di nuovo e ciao. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Così:
Codice:
Private Sub Command1_Click() If Text1.Text = "" Then MsgBox "Devi inserire un valore nel campo valore", vbCritical, "Campo valore vuoto" Else Text2.Text = Round(Text1.Text * 100 / 120, 2) Text3.Text = Round(Text1.Text * 20 / 120, 2) Text4.Text = Round(Text2.Text * 100 / 125, 2) End If End Sub
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#7 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Ciao e grazie di nuovo, mi dice:"Errore di compilazione: Sub o fuction non definita" e mi evidenzia il primo Round Ed ho fatto copia e incolla dalla tua risposta, ho questa situazione ora:
Private Sub Command1_Click() If Text1.Text = "" Then MsgBox "Devi inserire un valore nel campo valore", vbCritical, "Campo valore vuoto" Else Text2.Text = Round(Val(Text1.Text) * 100 / 120, 2) Text3.Text = Round(Val(Text1.Text) * 20 / 120, 2) Text4.Text = Round(Val(Text2.Text) * 100 / 125, 2) End If End Sub Io uso Visual Basic 5, vorrà dire qulcosa la versione? |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Passami il progettino che ci do un occhiata!
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#9 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Lo metto in allegato. Grazie
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
A me questa sequenza nn da errore...
Codice:
Text2.Text = Round(Text1.Text * 100 / 120, 2) Text3.Text = Round(Text1.Text * 20 / 120, 2) Text4.Text = Round(Text2.Text * 100 / 125, 2)
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#11 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
A me da quell'errore, ti allego due screen shot così lo vedi anche tu, forse così è meglio, non sarà perchè la versione 5 non prevede questa istruzione? Ciao e grazie
|
|
|
|
|
|
#12 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Non me li fà allegare troppo grandi, ma non sarà che quell'istruzione non è supportata nella versione 5?
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Ci sarebbe da giocare con le stringhe e fare una funzione simile, però sicuramente è meglio se c'è ne una similile anche per il 5!
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
|
#14 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Ho risolto così:
Text2.Text = Format(Val(Text1.Text) * 100 / 120, "00.00") Text3.Text = Format(Val(Text1.Text) * 20 / 120, "00.00") Text4.Text = Format(Val(Text2.Text) * 100 / 125, "00.00") Grazie per l'interessamento e tanti saluti. |
|
|
|
|
|
#15 |
|
Member
Iscritto dal: Sep 2003
Città: Caserta
Messaggi: 268
|
Se non mi sbaglio c'è un'altra istruzione che sichiama TRUNC, però ora non ricordo bene se esiste e se tronca solo una parte o tutto!
__________________
Amd Athlon Xp 2400+ | Asus A7V600 | Power Color Radeon 9600 PRO 256Mb | 512 Mb RAM @ 266 Mhz | HD 80 Gb Maxtor (2Mb Chace) + HD 120 Gb Maxtor (8Mb Cache) | LG 48x24x48x | LCD Samsung SyncMaster 172V | 3DMark03 2580 |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
|
#17 |
|
Registered User
Iscritto dal: Nov 2002
Messaggi: 77
|
Ciao, sì arrotonda pure, se gli fai fare lo scorporo dell'iva per esempio, che è quello a cui mi serviva, se metti 100 (valore ivato)come valore iniziale e vuoi sapere su 100 quanto è l'iva, che sarebbe 16,6 periodico (16,6666666666666666) come valore ti da 16,67. Ciao
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:55.



















