Generador de código al abrir mi formulario en un label

Por necesidad de mi trabajo empece a implementar el visual basic de excel, se hizo un documento para registro de cotizaciones, lo cual siento que va bastante bien, sin embargo no puedo generar un código alfanumérico y que me lo muestre en un label, logre hacerlo con puro numero sin embargo no puedo con numero y letras, ejemplo IMB201800001, al mismo tiempo de ejecutar mi userform no me toma el ultimo código ejemplo IMB201800001 y le sume 1 osea que te de IMB201800002.

Cabe mencionar que tengo una base datos.

Agradecería me ayudaran ya que llevo dos semanas y nada.

2 respuestas

Respuesta

El siguiente código te mostrará el consecutivo en un Label1 al abrir el Userform. No indicas donde se guarda el último código utilizado así que lo dejo en la celda X1 de la hoja activa.

Private Sub UserForm_Initialize()
nrox = Val(Right([X1], 8)) + 1
Label1.Caption = "IMB" & Format(nrox, "000000000")
End Sub

Ajustá el nombre de tu label y la celda donde se guarda el último código utilizado.

PD) Si un estudiante tarda no menos de 3 años en terminar su carrera de analista programador, no te desesperes si solo te ha llevado 2 semanas... ;)

¡Gracias!  por su comentario de verdad me alienta.

de acuerdo a lo que escribe "Donde se guarda el ultimo código", es en una base de datos en al columna A , ya que al abrir mi userform debe registrar el código que acabo de mencionar, a darle clic en un botón se envía toda las información de un listbox a excel, por lo consecuente la ultima celda es la que contiene el ultimo código generado.

 si es necesario enviarle mi archivo a su correo, agradecería muchísimo su inspección del documento.

Mis correos aparecen en mi sitio que dejo al pie. Podés utilizar el de cibersoft. Ar de gmail

Sdos.

Te recuerdo que la consulta sigue en mi lista de 'pendientes de respuesta' . Solicita aclaraciones (si aún no la tenés resuelta) o valora para darla por cerrada. Si necesitas enviarme el libro en la imagen se observan los 2 correos.

Sdos!

Respuesta

Si tienes una base de datos necesitas un código que cuente las filas que contiene, y como veo que parte del código es el año en curso adapte este código para proporcionarte un ejemplo de como puedes hacer tu código

y este es el codigo

Private Sub CommandButton1_Click()
Set DATOS = Range("A1").CurrentRegion
With DATOS
    R = .Rows.Count
    .Cells(R + 1, 1) = Label2
End With
CARGA
End Sub
Private Sub UserForm_Initialize()
CARGA
End Sub
Sub CARGA()
Label2 = "IMB" & Year(Date) & _
Format(Range("A1").CurrentRegion.Rows.Count, "00000")
End Sub

De antemano agradezco mucho su tiempio, sin embargo aplique tal cual me dio el código, sin embargo me da el numero de fila, pero i en mi liustbox tengo varios productos, ejemplo

 FILA 1            IMB20180001 PRODUCTO1

FILA 2             IMB20180001 PRODUCTO2

FILA 3             IMB20180001 PRODUCTO3

FILA 4             IMB20180001 PRODUCTO4

FILA 5             IMB20180001 PRODUCTO5

FILA 6             IMB20180001 PRODUCTO6

Me inserta en mi tabla2 los 6 producto y al iniciar nuevamente el userform me da el código

IMB20180007.

Agradecería mucho si usted pudiera echarle un vistazo a mi documento, si es así,¿pudiera proporcionarme un correo electrónico?.

Gracias de antemano.

Sube tu archivo a google drive, one drive, mediafire o algún servicio de la nube o puedes poner una imagen de tu base datos y de tu userform para qnetender lo que quieres.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas