Access - Seleccion multiple no funciona.

   
Vista:

Seleccion multiple no funciona.

Publicado por Cristian (42 intervenciones) el 19/05/2017 16:46:30
Hola tengo un formulario en donde hay un listbox que muesta un listado de alumnos y un boton "cargar". El problema me surge cuando selecciono mas de un alumno y clic en el boton en el subformulario que se tiene que impactar solo se repite el ultimo de la seleccion tantas veces como los datos seleccionados.

El codigo que tengo en el boton es el siguiente
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Private Sub CmdProcesa_Click()
Dim vrt_NroDNI As Variant
Dim midb As Database
Dim RS As Recordset
Dim RS1 As Recordset
Dim N_Deporte As Integer
Dim Categoria As String
Call OpenMain(midb)
 
N_Deporte = CLng(Forms![FrmAsistencia]![CmbDeporte])
Categoria = Forms![FrmAsistencia]![CmbCategoria]
 
Set RS = midb.OpenRecordset("Asistencia", dbOpenTable)
Set RS1 = midb.OpenRecordset("Asistencia", dbOpenTable)
RS.Index = "Primarykey"
For Each vrt_NroDNI In Me.ListaAlumnos.ItemsSelected
RS1.Index = "Primarykey"
 
RS.AddNew
With RS
.Fields(1) = Me.ListaAlumnos.Column(0)  'dni
.Fields(2) = Me.ListaAlumnos.Column(1)  'nombre socio
.Fields(3) = Me.TxtCategoria            'categoria
.Fields(4) = CDate(Me.fecha)            'fecha
.Fields(6) = "A"
End With
RS.Update
Next vrt_NroDNI
RS.Close
'Forms![SubFrmAsistencia].Requery
Forms![FrmAsistencia]!SubFrmAsistencia.Requery
Beep
Beep
End Sub

Puede ser que me este faltando algo en el codigo?
Como siempre gracias por sus aportes.
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
Imágen de perfil de Norberto

Seleccion multiple no funciona.

Publicado por Norberto (595 intervenciones) el 23/05/2017 16:06:55
Hola.

Recorres los elementos seleccionados con la variable NroDNI y luego no la usas, por lo que siempre te usa la primera fila. Debes de cambiar esto:

1
2
3
4
...
.Fields(1) = Me.ListaAlumnos.Column(0, vrt_NroDNI)  'dni
.Fields(2) = Me.ListaAlumnos.Column(1, vrt_NroDNI)  'nombre socio
...

Un saludo,

Norberto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar