Test Egalité entre 2 string
Bonjour à tous ,
j'aurais voulu savoir s'il y avait des choses a savoir sur les tests d'égalité entre 2 strings car ça fais deux fois que j'essai d'élaborer un test entre 2 string et deux fois qu'aucune égalité ne ressort.A chaque fois aucune instruction du IF ne s'effectue.
voila un code :
Code:
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
| Dim rsStock As DAO.Recordset
Dim rsMode As DAO.Recordset
Dim firstS As Integer
Dim lastS As Integer
Dim FirstM As Integer
Dim lastM As Integer
Dim date1 As Date
Dim Date2 As Date
Dim Temps As Long
Dim sTab(100) As String
Dim nbevt As Integer
Set rsStock = CurrentDb.OpenRecordset("Stock", dbOpenDynaset)
Set rsMode = CurrentDb.OpenRecordset("Modes", dbOpenDynaset)
DoCmd.RunSQL "delete from Total"
nbevt = DCount("*", "Evenements", "[IDMachine]=" & Me.IDMachine.Value)
rsStock.MoveFirst
firstS = rsStock("ID")
rsStock.MoveLast
lastS = rsStock("ID")
rsMode.MoveFirst
FirstM = rsMode("IDentrée")
rsMode.MoveLast
lastM = rsMode("IDentrée")
For i = 0 To 2 ^ nbevt - 1
rsMode.FindFirst ("[IDEntrée]=" & i + 1)
sTab(i) = rsMode("Mode")
Next i
For j = 0 To 2 ^ nbevt - 1
Temps = 0
For i = firstS To lastS
rsStock.FindFirst ("[ID]=" & i)
If rsStock("NomMode") = sTab(j) Then
date1 = rsStock("DateDébut")
rsStock.MoveNext
If rsStock.EOF = False Then
Date2 = rsStock("DateDébut")
Temps = Temps + DateDiff("s", date1, Date2)
Else
MsgBox ("Machine toujours en " & Me.Mode.Value)
End If
End If
Next i
DoCmd.RunSQL "Insert into Total(Mode,Total) values( '" & sTab(j) & "' , " & Temps & " )"
Next j
End Sub |
rsMode("Mode") est en Texte dans ma table .
rsStock("NomMode") est en texte dans ma table
je pense que le problème vient surement des différences de traitement des chaîne de caractère entre access et vba .. mais comme je n'y connait rien je suis un peu bloquer.
Dois je concaténer de manière à ne prendre que les caractères devant être comparer ? si oui comment ?
pouvez vous m'aider s'il vous plait?