Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2011, 07:01
Avatar de sven_uri
sven_uri
 
Fecha de Ingreso: mayo-2011
Mensajes: 109
Antigüedad: 13 años, 6 meses
Puntos: 4
De acuerdo Problemas con Visual Basic con Excel

Buenas gente,

Hace poco que empecé a programar y descubrí esto del Visual Basic con Excel y ahora me encuentro con un problema que no sé resolver. Haber si vosotros veis lo que yo no consigo ver:

El programa coge un número que le introduces (ex:1111, tiene que ser de 4 cifras aunque aún no he puesto que sea obligatoriamente de 4) y lo divide en dos partes (los 2 primeros números (N1) y los dos posteriores (N2) y te hace unas operaciones para poder asignar un código aparte del número de socio (en el caso de 1111, me da 6 y la letra B).

Mi problema esta en que ahora quiero hacer que entrando "6B" (del ejemplo anterior) me de como resultado el 1111. Podríais enseñarme como seria? :S

Sub socis()

Dim NS, N1, N2, acumulador, x, codicontrol, xifra As Integer
Dim lletra As String
NS = Range("B2").Value

N1 = Int(NS / 100)
N2 = NS - (N1 * 100)

acumulador = 0

For x = 1 To N2 Step 1

acumulador = acumulador + x

Next

N2 = acumulador * N1 * 13411


codicontrol = (N2 / 9 - Int(N2 / 9)) * 9

xifra = (N2 / 31 - Int(N2 / 31)) * 31

If xifra < 10 Then
lletra = "A"
ElseIf xifra >= 10 Or xifra < 19 Then
lletra = "B"
Else
lletra = "C"
End If

Range("B3").Value = NS & Int(codicontrol) & lletra

Grácias :)