questo è il codice di una funzione

codice:
Public Function ricercaposizionale(carminimi As Integer, nminimo As Integer, ripetizioniminime, nmassimo)
Do Until nminimo > nmassimo //mi fermo quando il valore minimo è = al massimo
fun = convertibinario(nminimo) //converto in binario
numerobinario = convbinario.Text //inserisco in una variabile
While Len(numerobinario) < carminimi //se la lunghezza è minore dei caratteri minimi 
numerobinario = 0 & numerobinario //aggiungo uno 0
Wend //e ripeto finchè la lunghezza è uguale
fun = quantevolte(Text2.Text, numerobinario) //conto il numero di volte che la scringa è contenuta in text2
nvolte = quantevolte2.Text //memorizzo in una variabile
MsgBox "numero volte" & nvolte
If nvolte > ripetizioniminime Then //se il numero è maggiore delle ripetizioni minime
MsgBox "inserito"
Text3.Text = Text3.Text & "numero: " & numerobinario & "  ripetizioni: " & nvolte & vbCrLf //lo inserisco nella casella di testo text3
End If
nminimo = nminimo + 1 //aggiungo 1 al numero minimo
Loop //ripeto
End Function
la funzione esterna convertibinario salva il risultato nella casella di testo convbinario
la funzione esterna quantevolte salva il risultato nella casella di testo quantevolte2


In questo caso il valore di nminimo dovrebbe aumentare di 1 ad ogni ciclo, invece no, parte da 1 e rimane fisso sul 2 (il valore da 1 passa a 2 alla riga "nminimo = nminimo + 1" e ritorna a 1 alla riga "fun = convertibinario(nminimo)")

cosa non va?

grazie

ciao