variante3

considerazioni su tipo coerente delle variabili da passare alle procedure per i calcoli
se la procedura ha variabili tipo Variant, accetta ogni tipo
se la procedura ha varabili tipo Integer, Long..accetta solo valori da variabili dello stesso tipo
a,b integer e procedura variant >>> accetta
a,b integer e procedura Integer >>> accetta
a,b long e procedura Long >>> accetta
a,b variant e procedura Variant >>> accetta

Private Sub CommandButton1_Click()
Rem considerazioni su tipo coerente delle variabili
Rem da passare alle procedure per i calcoli
Rem se la procedura ha variabili tipo Variant, accetta ogni tipo
Rem se la procedura ha varabili tipo Integer, Long..accetta solo
Rem valori da variabili dello stesso tipo
Rem a,b integer e calcola variant >>> accetta
Rem a,b integer e calcola1 Integer >>> accetta
Rem a,b long e calcola2 Long >>> accetta
Rem a,b variant e calcola3 Variant >>> accetta
Dim a, b As Integer
Dim c As Variant
Dim d As Long
Dim e As Double
a = 10000
b = 3000
c = a / b
d = a / b
e = a / b
ListBox1.AddItem ("a , b tipo Integer ")
ListBox1.AddItem (a & " / " & b)
ListBox1.AddItem ("quoziente variant " & c)
ListBox1.AddItem ("quoziente long " & d)
ListBox1.AddItem ("quoziente double " & e)
Call calcola((a), (b))
Call calcola1((a), (b))
ListBox1.AddItem ("=================")
End Sub

Private Sub calcola(x As Variant, y As Variant)
Dim esegue As Variant
esegue = x / y
ListBox1.AddItem ("---------------")
ListBox1.AddItem ("quoziente variant " & esegue)
End Sub

Private Sub calcola1(x As Integer, y As Integer)
Dim esegue As Double
esegue = x / y
ListBox1.AddItem ("---------------")
ListBox1.AddItem ("quoziente double " & esegue)
End Sub

Private Sub CommandButton2_Click()
Dim a, b As Long
Dim c As Variant
Dim d As Long
Dim e As Double
a = 500000000
b = 2000000
c = a / b
d = a / b
e = a / b
ListBox1.AddItem ("a , b tipo long ")
ListBox1.AddItem (a & " / " & b)
ListBox1.AddItem ("quoziente variant " & c)
ListBox1.AddItem ("quoziente long " & d)
ListBox1.AddItem ("quoziente double " & e)
Call calcola((a), (b))
Call calcola2((a), (b))
ListBox1.AddItem ("=================")
End Sub

Private Sub calcola2(x As Long, y As Long)
Dim esegue As Double
esegue = x / y
ListBox1.AddItem ("---------------")
ListBox1.AddItem ("quoziente double " & esegue)
End Sub

Private Sub CommandButton3_Click()
Dim a, b As Variant
Dim c As Variant
Dim d As Long
Dim e As Double
a = 900000000
b = 4000000
c = a / b
d = a / b
e = a / b
ListBox1.AddItem ("a , b tipo variant ")
ListBox1.AddItem (a & " / " & b)
ListBox1.AddItem ("quoziente variant " & c)
ListBox1.AddItem ("quoziente long " & d)
ListBox1.AddItem ("quoziente double " & e)
Call calcola((a), (b))
Call calcola3((a), (b))
ListBox1.AddItem ("=================")
End Sub

Private Sub calcola3(x As Variant, y As Variant)
Dim esegue As Variant
esegue = x / y
ListBox1.AddItem ("---------------")
ListBox1.AddItem ("quoziente variant " & esegue)
End Sub

vedi variante3.ppt