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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| Private Sub btngadr_Click()
TransposerElement Me.lstgau, Me.lstdr
End Sub
Private Sub btngadrtdeu_Click()
TransposerElement Me.lstgautt, Me.lstdr
End Sub
Private Sub btndrga_Click()
TransposerElement Me.lstdr, Me.lstgau
End Sub
Private Sub btndrgatt_Click()
TransposerElement Me.lstdr, Me.lstgautt
End Sub
Private Sub TransposerElement(prmlstdr As ListBox, prmlsgau As ListBox, _
Optional prmbolLimiteSelection As Boolean = True, Optional prmbolSelection As Boolean = True)
Dim i As Integer
Dim Db As DAO.Database
Set Db = CurrentDb
With prmlstdr
If prmbolLimiteSelection Then ' S'il ne faut déplacer que les élements sélectionnés,
For i = 0 To .ListCount - 1
'si l'élement est sélectionné dans la liste source,
'inverse le champ selection
If .Selected(i) Then
Select Case prmlsgau.Name
Case "lstgau"
Db.Execute "UPDATE Table2 SET Selection=NOT Selection WHERE nomsclients=" & _
Chr(34) & .Column(0, i) & Chr(34)
Case "lstgautt"
Db.Execute "UPDATE Table3 SET Selection=NOT Selection WHERE nomsclients=" & _
Chr(34) & .Column(0, i) & Chr(34)
End Select
End If
Next i
Else ' sinon, permutte la globalité
Select Case prmlsgau.Name
Case "lstgau"
Db.Execute "UPDATE Table2 SET Selection=" & CInt(prmbolSelection)
Case "lstgautt"
Db.Execute "UPDATE Table3 SET Selection=" & CInt(prmbolSelection)
End Select
End If
End With
'Rafraichit la zone de liste destination
prmlsgau.Requery
End Sub |
Partager