si hacer mod en 2500 (2500 mod 2000) te retorna 500, luego haces mod al 500 con 500 así sucesivamente hasta llegar a 0.
el ejemplo que te di solo faltava ponerle los textbox :S
Código
Private Sub Command1_Click() Dim numeros As Long numeros = Int(txtdinero.Text) Do numeros = billetes(numeros) 'MsgBox (numeros) Loop Until numeros = 0 MsgBox ("listo") End Sub Function billetes(numero As Long) As Long Select Case numero Case Is >= 2000 billetes = numero Mod 2000 Debug.Print Int(numero / 2000) & " Billetes de 2000" txt2000 = Str(Int(numero / 2000)) Case Is >= 1000 billetes = numero Mod 1000 Debug.Print Int(numero / 1000) & " Billetes de 1000" txt1000 = Str(Int(numero / 1000)) Case Is >= 500 billetes = numero Mod 500 Debug.Print Int(numero / 500) & " Billetes de 500" txt500 = Str(Int(numero / 500)) Case Is >= 200 billetes = numero Mod 200 Debug.Print Int(numero / 200) & " Billetes de 200" txt200 = Str(Int(numero / 200)) Case Is >= 100 billetes = numero Mod 100 Debug.Print Int(numero / 100) & " Billetes de 100" txt100 = Str(Int(numero / 100)) Case Else End Select End Function
saludos