Visual Basic - Rellenar campos secuencialmente

Life is soft - evento anual de software empresarial
   
Vista:

Rellenar campos secuencialmente

Publicado por Holler (2 intervenciones) el 17/06/2013 15:56:10
Estoy con un marron en Access 2003 y no se muy bien como solucionarlo, pues hace años que no toco VisualBasic, y cuando lo hacía me parecía complicado.

En la que 3 de sus campos se deben rellenar automáticamente cuando recibimos una remesa de etiquetas.

Las etiquetas se numeran con LETRA, NUMERO Y NUMERO DE SERIE. Por ahora van de la A01 a la A24, repitiendo el número de serie hasta llegar a la 24.

Remesa01 A 01 00083456 .. A 24 00083456
Remesa02 A 01 00083457 .. A 24 00083457

La tabla se llama ETIQUETAS y los campos que necesito rellenar automáticamente son texto:

E_L_Etiquetas, E_N_Etiquetas, E_N_Serie

Mas o menos he conseguido inicializar tablas y esas cosas básicas. Pero necesito traducir esto a Visual Basic de Access2003:

- Pide letra inicial de etiqueta [E_L_Etiqueta_Incial] y letra final de etiqueta [E_L_Etiqueta_Final] // suele ser la misma = 'A', pero debe aceptar desde 'A' hasta 'ZZ'
- Pide numero inicial de etiqueta [ E_N_Etiqueta_Inicial] y numero final de etiqueta [E_N_Etiqueta_Final] // va desde '01' a '24'
- Pide número de serie inicial [E_N_Serie_Inicial] y número de serie final [E_N_Serie_Final] // siempre son 7 dígitos y tiene que llevar los ceros a la izquierda

E_L_Etiqueta = E_L_Etiqueta_Inicial
E_N_Etqiueta = E_N_Etiqueta_Incial
E_N_Serie = E_N_Serie_Inicial

Para E_L_Etiqueta = E_L_Etiqueta_Inicial hasta E_L_Etiqueta = E_L_Etiqueta_Final
Hacer:
Para E_N_Serie = E_N_Serie_Incial hasta E_N_Serie = E_N_Serie_Final
Hacer:
Para E_N_Etiqueta = E_N_Etiqueta_Inicial hasta E_N_Etiqueta = E_N_Etiqueta_Final
Hacer - insertar
E_L_Etiqueta
E_N_Etiqueta
E_N_Serie
Fin insertar
E_N_Etiqueta = siguiente valor
Fin Para E_N_Etiqueta
E_N_Serie = siguiente valor
Fin Para E_N_Serie
E_L_Etiqueta = siguiente valor
Fin Para E_L_Etiqueta


¿Podría alguien traducir eso a Visual Basic entendible por Access 2003?

Mil gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Rellenar campos secuencialmente

Publicado por Holler (2 intervenciones) el 15/07/2013 16:49:59
Resuelto:

Hice un formulario en el que se introduce la letra, el número de etiquetas, la serie inicial y la final y genera una tabla en la que se colocan los valores correspondientes. Falta un filtro que compruebe que ya están los datos puestos en la tabla y no duplicarlos. ¿Alguna idea?

El boton 'Generar etiquetas' tiene este código de evento:

Private Sub B_Genera_Etiquetas_Click()
On Error GoTo Err_B_Genera_Etiquetas_Click

Dim db As Database
Dim rst As Recordset
Dim i As Integer
Dim j As Integer

Set db = CurrentDb()
Set rst = db.OpenRecordset("ETIQUETAS")

For i = Forms![F_Genera_Etiquetas]![Serie_ini] To Forms![F_Genera_Etiquetas]![Serie_Fin]
For j = 1 To Forms![F_Genera_Etiquetas]![N_Etiquetas_Serie]
rst.AddNew
rst![N_ETIQUETA] = Forms![F_Genera_Etiquetas]![Letra] & Format(j, "00")
rst![S_ETIQUETA] = Format(i, "0000000")
rst![FECHA] = Now()
rst.Update
Next
Next
rst.Close
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar