Non ho capito tanto bene quello che ti serve..
Considera che se scrivi:
a = 3/2
Response.Write (a)
ottinei a video 1.5
ma se scrivi
a = "3/2"
Response.Write (a)
ottieni a video 3/2
Non si capisce cosa devi fare.. se hai bisogno di tutte e due le forme (frazionaria e non) puoi emulare la creazione di un nuovo tipo di dati con una classe. Un esempio banale potrebbe essere:
codice:
class cFraction
Private num
Private val
Private Sub Class_Initialize()
'null
End Sub
Public Property Let fraction(f) 'as string!!
num = f
val = Eval(f)
End Property
Public Property Get fraction()
fraction = num
End Property
Public Default Property Get value()
value = val
End Property
Private Sub Class_Terminate()
'null
End Sub
End Class
'che poi richiami e usi così:
Dim numeroFrazionario
Set numeroFrazionario = new cFraction
numeroFrazionario.fraction = "2/3" ' importante che ci siano le virgolette, va passata come testo
Response.Write ("La frazione è: " & numeroFrazionario.fraction & "
")
Response.Write ("Il valore della frazione che puoi usare anche nei calcoli è: " & numeroFrazionario & "
")
Non l'ho provata ma dovrebbe funzionare, se è quello che cerchi. solo devi istanziare un oggetto per cFraction per ogni numero frazionario di cui hai bisogno