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 52 53 54 55 56 57
| Private Sub tvwStockage_DblClick()
'Ouverture des formulaires de stock par double clic sur le noeud
'ATTENTION: le fonctionnement suppose que la longueur de l'ItemID est inférieure à celle de sa tabletteID
On Error Resume Next
Dim NodX As Node
Dim lg As Long
Set NodX = tvwStockage.SelectedItem
Dim Noeud As String
Dim Cle As String
Noeud = CStr(NodX)
lg = InStr(CStr(NodX), " -- ") - 1
Cle = Left(Noeud, lg)
Debug.Print "Cle "; Cle
Select Case lg
Dim stDocName As String
Dim stLinkCriteria As String
Case 1
If Left(Noeud, lg) <> "X" Then
stDocName = "frmDepot"
'stLinkCriteria = "[DepotID]=" & "'" & Left(Noeud, lg) & "'"
stLinkCriteria = "[DepotID]=" & "'" & Cle & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Case 2
stDocName = "frmMagasin"
stLinkCriteria = "[MagasinID]=" & "'" & Cle & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Case 3
If Mid(Noeud, lg + 5, 2) = "<<" Then
Debug.Print Mid(Noeud, lg, lg + 2)
stDocName = "frmEpi"
stLinkCriteria = "[EpiID]=" & "'" & Cle & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
'---------- C'est ce if qui pose problème
If Mid(Noeud, lg + 5, 2) = ">>" Then
Debug.Print Mid(Noeud, lg, lg + 2)
Me.frmStockage_sub.SourceObject = "frmArticle"
Me.frmStockage_sub.Form.cmbItemID.Value = Cle
' Maintenant simuler une maj de cmbItemID
End If
Case 4
stDocName = "frmTravee"
stLinkCriteria = "[TraveeID]=" & "'" & Cle & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Case 5
stDocName = "frmTablette"
stLinkCriteria = "[TabletteID]=" & "'" & Cle & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End Select
End Sub |
Partager