Pagina 3 di 5 primaprima 1 2 3 4 5 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 50
  1. #21
    Se vuoi fare un controllo simultaneo all'aggiunta dei numeri all'ora devi modificare la procedura altrimenti darà sempre errore visto che all'inizio tutti i textbox sono vuoti e quindi uguali.

    Prova in questo modo:

    codice:
    Sub Controlla()
     Dim i, m As Integer
      For i = 0 To 10
       For m = 0 To 5
        If ((Text1(m + 4 * i)) <> "") and (Text1(m + 1 + 4 * i) <> "") then
        If Text1(m + 4 * i) = Text1(m + 1 + 4 * i) Then GoTo Err
      End If    
    Next
      Next
    Exit Sub
    
    Err:
    MsgBox "Caratteri ripetuti" & m & " " & i
    
    End Sub
    La selezione che ho inserito serve a verificare che i textbox confrontati non siano vuoti.
    Mosficala poi secondo le tue esigenze.

    Alla prossima

    P.S. Il controllo ti conviente inserirlo nell'evento GotFocus o in LostFocus dei TextBox.

  2. #22
    ciao ho provato la routine in gotfocus e sembra andare tutto bene,unico problema che il msgbox incrementa all'interno l'errore,il msgbox dovrebbe solo darmi il messaggio ,dato ok il cursore dovrebbe ritornare indietro nella texbox e pulirla,
    con il controllo dei 90 numeri me lo fa, ho provato a modificare la routine ma torna alla prima texbox.


    Alarico_Re

  3. #23
    nel magbox tu puoi scrivere quello che desideri, oppure puoi eliminarlo e inserire una procedura che cancella il contenuto del textbox errato.Dipende dalle tue esigenze.

    Tutto quello che è sotto la label "Err:" è tutto quello che accade al generarsi dell'errore, decidi tu cosa far accadere.

    Alla prossima

  4. #24
    mi dispiace ma non riesco quando da l'errore,dato ok ,ritorna sempre sulla 1 texbox e me la pulisce,se continuo mi da sempre errore e ritorna alla quartultima textbox e pulisce,mi dai una mano grazie

  5. #25
    Non credo di aver capito esattamente cosa succede. Magari prova apostarmi il codice che non ti funziona o che pensi che non vada bene o prava a spiegarti meglio.

    Alla prossima

  6. #26
    mi spiego meglio
    incomincio ad inserire i numeri nel momento che ripeto il numero mi da il msgbox "Numero ripetuto" se do ok il tab salta alla texbox successiva per continuare,io vorrei che nel momento che mi da il msgbox"Numero ripetuto" e premuto ok ritornasse sulla texbox con il numero ripetuto e pulirla.
    così inserisco il numero giusto e continuo,spero di essere stato chiaro.
    scusami se ti dò da fare come ho detto prima stò agli inizi ma cè la metto tutta,ti ringrazio anticipatamente
    Alarico_Re

  7. #27
    ok ora ho capito,
    allora devi semplicemente aggiungere un comando per pulire la textbox subito sotto il msgbox. Ecco un esempio.

    codice:
    Err:
    msgbox "...."
    Text1(m + 1 + 4 * i).setfocus
    Text1(m + 1 + 4 * i).text = ""

    Così dovrebbe funzionare.
    Fammi sapere.
    Alla prossima

  8. #28
    ok ritorna e pulisce,ma è sorto un altro problema una volta che ho inserito i primi 5 numeri di una ruota alla successiva se ripeto il numero mi da MsgBox,in teoria il controllo dovrebbe controllare l'inserzione dei primi 5 numeri e fermarsi e dopo ricominciare da capo con i secondi 5 numeri e fermarsi e così via,invece la routine controlla i numeri di seguito .

  9. #29
    Hai ragione quello che bisogna fare è inserire un controllo di fine riga. lo puoi fare con una variabileche registra l'indice del textbox "incriminato" ecco l'esempio:

    codice:
    Sub Controlla()
     Dim i, m As Integer 
     Dim IndexErr As Integer
    
    IndexErr = -1
      For i = 0 To 10
       For m = 0 To 5
        If ((Text1(m + 4 * i)) <> "") and (Text1(m + 1 + 4 * i) <> "") then
        If Text1(m + 4 * i) = Text1(m + 1 + 4 * i) Then
         IndexErr = m + 1 + 4 * i
      End If    
    Next
     If IndexErr > -1 then
      goto Err
      IndexErr = -1
     End if
      Next
    Exit Sub
    
    Err:
    ....
    ....
    text1(IndexErr).setfocus
    text1(IndexErr).text = ""
    
    End Sub
    Non la ho testata ma così dovrebbe funzionare,
    fammi sapere
    Alla prossima

  10. #30
    ho fatto di nuovo il test della routine,ho capito come funziona ,infatti controlla solo il numero consecutivo inserito quindi ti faccio un esempio
    ruota di Bari 23-24-23-24-25 la routine viene ingannata ok
    secondo me si dovrebbe fare un ciclo che controlli l'inserimento dei numeri consecutivamente e dopo aver inserito 5 numeri controllare che siano tutti diversi,poi ricominciare ,questo per un totale di 11 volte

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.