Nn riesco a a prendere 2 valori da 2 text in un form.exe di vb!!!
le ho provate tutte anke text1.value ma mi da errore....
come faccio???![]()
Nn riesco a a prendere 2 valori da 2 text in un form.exe di vb!!!
le ho provate tutte anke text1.value ma mi da errore....
come faccio???![]()
dim variabile1 as variant
variabile1 = text1.text
'ora variabile1 contiene il valore della casella di testo text1
ma ci ho provatooo!!
mi dice impossibile a trovare il metodo o il membro dei dati!!!
ti posto il copdice...ma è veramente una stronzata!!!
Private Sub Command1_Click()
Dim a As variant
a = Text1.Text
'a = CInt(Text1) + CInt(Text2)
'MsgBox (a)
End Sub
Il codice che hai riportato funziona benissimo,ma nelle textbox ci metti dei valori numerici spero!
mic
Ciao.
L'amico Michele79 ha perfettamente ragione...
Perchè non metti un controllo sui valori digitati nelle due text?
Attraverso la funzione "isnumeric", controlli che non siano stati digitati valori non numerici.
Mi spiego meglio con un esempio che mi viene in mente così, di corsa:
Private Sub Command1_Click()
if not isnumeric(text1) or not isnumeric(text2) then
msgbox "Attenzione: digitato un valore non numerico!", vbcritical, "Messaggio di errore"
exit sub
end if
Dim a As variant
a = Text1.Text
'a = CInt(Text1) + CInt(Text2)
'MsgBox (a)
End Sub
Volendo si può anche mandare, in caso di errore, il focus sulla text che contiene l'errore.
Fammi sapere se può interessarti.
![]()
Giulio C. - Roma
scusami...
ma sul form aggiungi 2 componenti TextBox prima di eseguire il prog???
:quote:Originariamente inviato da Johnny_Depp
scusami...
ma sul form aggiungi 2 componenti TextBox prima di eseguire il prog???
...scherzi a parte...
sei sicura di aver messo 2 textbox e non 2 controlli label???
...and I miss you...like the deserts miss the rain...
Ciao Monica
scusa ma c'è una cosa che non capisco, perchè dai alla variabile a due valori differenti? mi spiego.
Prima dichiare a=text1.text
dopo, alla stessa variabile passi il valore
a = CInt(Text1) + CInt(Text2)
sinceramente non capisco.
se vuoi solo fargli fare un'operazione, prima di tutto non dichiari la variabile come variant, perchè è uno spreco di memoria, visto che sai già che all'interno delle text box non metterai stringhe ma solo numeri, al massimo la dichiari come long, per essere sicura che non ti dia errore di overflow
E in secondo luogo nel command button, puoi semplicemente mettere
dim lngA as long 'Perchè è più leggibile nel codice
'Controlla che i valori immessi siano numeri
If Not IsNumeric(Text1) Or Not IsNumeric(Text2) Then
MsgBox "Attenzione: digitato un valore non numerico!", vbCritical, "Messaggio di errore"
'Cancella il contenuto delle caselle di testo
Text1.Text = ""
Text2.Text = ""
Exit Sub
End If
'Somma i valori presi dalla casella di testo
lngA=Text1.text + Text2.text
'Comunica il risultato
msgbox lngA
![]()
X alpho: Nn farci caso...è ke le ho provate tutte!! poi alla fine ho fatto un copia e incolla e sara rimasto qls in +!!!
Cmq ho messo la textbox e nn una label e...penso (x nn sax nè leggere e ne scrivere!!!) ke devo settare qlc nelle proprieta del progetto xke mi da proprio errore su .TEXT e mi dice impossibile trovare il metodo!!! KE COSA XO???
Ke ne pensate???
Ciao. Scusa tu stai dicendo che hai un form con due textBox ed un bottone. Sul click del bottone tenti di accedere al .Text delle 2 textbox e il VB reagisce dicendoti che .Text non è un metodo o membro dei dati![]()
Hai provato facendo semplicemente
MsgBox Text1.Text
?
L'intellisense ti funziona? Nel senso, se tu scrivi Text1. , lui ti fa apparire la lista delle proprietà e dei metodi? Text è in questa lista?
Text1 e Text2 esistono nello stesso form in cui è presente il codice che ti da errore?
Oppure, quando ti da errore te lo da se lanci in compilazione completa o premendo semplicemente F5 e poi cliccando il pulsante? (a volte l'IDE di VB si intorta e ti segnala la posizione sbagliata degli errori).
![]()