Visualizza messaggio singolo
Vecchio 14-08-2001, 15.20.03   #5
xegallo
Junior Member
 
L'avatar di xegallo
 
Registrato: 15-05-2001
Loc.: Padova
Messaggi: 58
xegallo promette bene
prova a inserire questo codice in un modulo

Function delete(Stringa As String, Posizione As Integer) As String
' questa funzione cancella un carattere
If Posizione = 0 Then
del = ""
delete = del
Exit Function
End If
If Len(Stringa) = 0 Then
del = ""
delete = del
Exit Function
End If
lunghezza = Len(Stringa)
If Posizione = lunghezza Then
ccc = Mid(Stringa, 1, lunghezza - 1)
del = ccc
delete = del
Exit Function
End If
If Posizione < lunghezza Then
ccc = Mid(Stringa, 1, Posizione - 1)
vvv = Mid(Stringa, Posizione + 1)
del = ccc + vvv
delete = del
Exit Function
End If
If Posizione > lunghezza Then
del = -1
delete = del
Exit Function
End If
delete = del
End Function
Function ControlloData(Stringa As String, Posizione As Integer, Char As String) As Integer
'questa funzione controlla che nel campo testo venga scritta una data, dato un separatore
' per questa funzione è necessario sul form ci sia un'oggetto textbox e seguente routine di evento
'Private Sub [nomeOggetto]_Change()
'Dim data As String
'Dim pos As Integer
' data = [nomeOggetto].Text
' pos = [nomeOggetto].SelStart
' cntr = ControlloData(data, pos, "/")
' If cntr = -1 Then
' data = delete(data, pos)
' [nomeOggetto].Text = data
' [nomeOggetto].SelStart = pos
' End If
'
'End Sub
controllo = 0
On Error GoTo Hell
If Len(Stringa) > o Then
carattere = Mid(Stringa, Posizione, 1)
If Posizione = 0 Then
controllo = -1
'cursore sul primo carattere caratteri ammessi 0,1,2,3
ElseIf Posizione = 1 Then
If Asc(carattere) > 47 And Asc(carattere) < 52 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul secondo carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9,
ElseIf Posizione = 2 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul terzo carattere l'unico carattere ammesso è quello designato da Char
ElseIf Posizione = 3 Then
If Asc(carattere) = Asc(Char) Then
controllo = 0
Else
controllo = -1
End If
'cursore sul quarto carattere caratteri ammessi 0,1
ElseIf Posizione = 4 Then
If Asc(carattere) > 47 And Asc(carattere) < 50 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul quinto carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9
ElseIf Posizione = 5 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul sesto carattere l'unico carattere ammesso è quello designato da Char
ElseIf Posizione = 6 Then
If Asc(carattere) = Asc(Char) Then
controllo = 0
Else
controllo = -1
End If
'cursore sul settimo carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9
ElseIf Posizione = 7 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul ottavo carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9
ElseIf Posizione = 8 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul nono carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9
ElseIf Posizione = 9 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If
'cursore sul decimo carattere caratteri ammessi 0,1,2,3,4,5,6,7,8,9
ElseIf Posizione = 10 Then
If Asc(carattere) > 47 And Asc(carattere) < 58 Then
controllo = 0
Else
controllo = -1
End If


End If
End If
ControlloData = controllo

Hell: controllo = -1
cotrollodata = controllo
Exit Sub
End Sub



speriamo vada bene
xegallo non è collegato   Rispondi citando