Problema inputbox



  • Problema inputbox
    di Nic82 data: 19/03/2010


    ciao a tutti, sapreste dirmi perchè quando schiaccio il tasto annula di questa inutbox non mi esce dalla sub? eppure ho impostato
    if num = false then exit sub...che dovrebbe far interrombere la sub ad una pressione di "annulla" nonostante il costrutto while..wend!

    e un'altra cosa, cosa significa all'inizio della sub impostare
    num ="" ???

    grazie

     
    Function InputFraLimiti(Mess, Infer, Super)
    
    InpuFraLimiti = ""
    Titolo = "Limiti: > " & Infer & " e < " & Super
    x = InputBox(Mess, Titolo)
    If Not IsNumeric(x) Then Exit Function
    x = Val(x)
    If x < Infer Or x > Super Then Exit Function
    InputFraLimiti = x
    
    End Function
    
    Sub ProvaInputFraLimiti()
    Num = ""
    
    While Num = ""
    Num = InputFraLimiti("Dammi un numero, caro", 100, 1000)
    Wend
    If Num = False Then Exit Sub
    MsgBox "Ok, il numero " & Num & " è compreso nei limiti!"
    End Sub
    



  • di Big ronnie (utente non iscritto) data: 19/03/2010

    Ciao nic,

    num = "" significa stringa vuota (null) e se non è dimensionata da qualche altra parte del codice non serve a nulla.

    nella funzione hai impostato che, se il valore non è nei limiti, di escire, dando quindi un valore nullo alla funzione.invece nel ciclo nella sub hai chiesto di non uscire finchè il valore di num (al quale hai assegnato il valore della funzione) non è diverso da null(num = "") e per questo che cliccando su annulla non si esce dalla sub.

    big



  • di Nic82 data: 25/03/2010

    Ok grazie 1000!!!!