Y' a aucun moment ou ca foire enfait, c'est bien ça le problème ^^ au pire je colle tout le code, si quelqu'un se sent de le décrypter.. (La programmation pour débutant tue toujours ainsi?^^)
Dim poidsattendu As Double 'definition des variables
Dim poidsrecu As Double 'definition des variables
Dim Nb_line As Integer 'Compteur de lignes
Dim Doloop As Boolean 'test de fin de boucle
Dim OF As String 'Nom de l'of courant
Dim Ordredefabrication As String 'définiton variables
Dim typecarton As String
Dim typedecarton As String
Private Sub Form_Load()
Dim tampon As String
Private Sub MSComm1_OnComm()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,N,7,1"
MSComm1.InputMode = comInputModeText
MSComm1.InputLen = 0 'all buffer from port
MSComm1.NullDiscard = True
end sub
private sub MSComm1_EvRenteceive 'regarde pour avoir la syntaxe correcte
tampon = MSComm1.Input
Call traitement(tampon) ' Routine de traitement
End Sub
End Sub
Private Sub Traitement(tampon As String)
tampon = poidsrecu
Label5.Caption (tampon)
poidsrecu = tampon
Label5.Caption = poidsrecu
Nb_line = Nb_line + 1
Range("A1").Offset(Nb_line, 0).Value = poidsattendu 'ecrire ds le excel
Range("B1").Offset(Nb_line, 0).Value = poidsrecu ' pareil
Range("C1").Offset(Nb_line, 0).Value = typedecarton ' pareil
If (17.12 > poidsrecu) And (poidsrecu > 17.085) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (14.26 > poidsrecu) And (poidsrecu > 14.225) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (4.61 > poidsrecu) And (poidsrecu > 4.575) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (16.66 > poidsrecu) And (poidsrecu > 16.6558) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (3.47 > poidsrecu) And (poidsrecu > 3.4458) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (14.03 > poidsrecu) And (poidsrecu > 13.995) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (3.83 > poidsrecu) And (poidsrecu > 3.795) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (13.71 > poidsrecu) And (poidsrecu > 13.675) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (14.41 > poidsrecu) And (poidsrecu > 14.375) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (4.51 > poidsrecu) And (poidsrecu > 4.475) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (8.21 > poidsrecu) And (poidsrecu > 8.18) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (2.79 > poidsrecu) And (poidsrecu > 2.7658) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (16.05 > poidsrecu) And (poidsrecu > 16.015) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (9.81 > poidsrecu) And (poidsrecu > 9.9775) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (20.21 > poidsrecu) And (poidsrecu > 20.175) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (17.51 > poidsrecu) And (poidsrecu > 17.475) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (12.1 > poidsrecu) And (poidsrecu > 11.9858) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (12.81 > poidsrecu) And (poidsrecu > 12.775) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If (5.856 > poidsrecu) And (poidsrecu > 5.8358) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
End If
If ColorBox.BackColor <> vbGreen Then
ColorBox.BackColor = vbRed
Range("B1").Offset(Nb_line, 0).Interior.Color = vbRed
Label5.BackColor = vbRed
End If
End Sub
Private Sub ButtonBegin_Click()
Dim test2 As Integer
Range("A2:A5000").Value = "" 'rend blanche les case selectionnés
Range("B2:B5000").Value2 = "" ' pareil
Range("C2:C5000").Value = "" 'pareil
ColorBox.BackColor = &H8000000F
Nb_line = 0
Label5.Caption = "Vide"
OF = "TestOF"
Range("A1:A5000").Offset(Nb_line, 0).Interior.Color = vbWhite
Range("B1:B5000").Offset(Nb_line, 0).Interior.Color = vbWhite
Label5.BackColor = &H8000000F
ButtonBegin.Enabled = False
Ordredefabrication = InputBox("Indiquez le numéro d'OF :")
Range("J2").Value = Ordredefabrication
Range("C2").Value = typedecarton
If ButtonBegin.Enabled = False Then
test2 = MsgBox("Vous allez commencer à enregistrer des valeurs", vbOKOnly, "Début_enregistrement")
End If
End Sub
Private Sub ButtonChangeOf_Click()
End Sub
Private Sub ButtonTest_Click()
Dim test As Integer
Dim typedecartons As String
poidsrecu = tampon
poidsrecu = tampon 'test
Label5.Caption = poidsrecu & " KG"
Nb_line = Nb_line + 1
If ButtonBegin.Enabled = True Then
test = MsgBox("Vous n'enregistrez aucune valeurs, appuyez sur Début", vbOKOnly, "Attention")
End If
Range("A1").Offset(Nb_line, 0).Value = poidsattendu 'ecrire ds le excel
Range("B1").Offset(Nb_line, 0).Value = Val(tampon) ' pareil
Range("C1").Offset(Nb_line, 0).Value = typedecarton
If (17.12 > poidsrecu) And (poidsrecu > 17.085) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 17.11
Label6.Caption = "Carton de 10, 600 Briquets"
typedecarton = "Carton de 10, 600 Briquets"
End If
If (14.26 > poidsrecu) And (poidsrecu > 14.225) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 14.25
Label6.Caption = "Boite de 10, 500 Briquets"
typedecarton = "Boite de 10, 500 Briquets"
End If
If (4.61 > poidsrecu) And (poidsrecu > 4.575) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 4.6
Label6.Caption = "Boite de 10, 160 Briquets"
typedecarton = "Boitede 10, 160 Briquets"
End If
If (16.68 > poidsrecu) And (poidsrecu > 16.6558) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 12
Label6.Caption = "Boite de 10, 1000 Briquets Djeepy"
typedecarton = "Boite de 10, 1000 Briquets Djeepy"
End If
If (3.47 > poidsrecu) And (poidsrecu > 3.4458) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 3.46
Label6.Caption = "Boite de 10, 200 Briquets Djeepy"
typedecarton = "Boite de 10, 200 Briquets Djeepy"
End If
If (14.03 > poidsrecu) And (poidsrecu > 13.995) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 14.02
Label6.Caption = "Boite de 8, 480 Briquets"
typedecarton = "Boite de 8, 480 Briquets"
End If
If (3.83 > poidsrecu) And (poidsrecu > 3.795) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 3.84
Label6.Caption = "Boite de 8, 128 Briquets"
typedecarton = " Boite de 8, 128 Briquets"
End If
If (13.71 > poidsrecu) And (poidsrecu > 13.675) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 13.7
Label6.Caption = "Barquette de 20, 500 Briquets"
typedecarton = "Barquette de 20, 500 Briquets"
End If
If (14.41 > poidsrecu) And (poidsrecu > 14.375) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 14.4
Label6.Caption = "Barquette de 20, 500 Briquets"
typedecarton = "Barquette de 20, 500 Briquets"
End If
If (4.51 > poidsrecu) And (poidsrecu > 4.475) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 4.5
Label6.Caption = "Barquette de 20, 160 Briquets"
typedecarton = "Barquette 20, 160 Briquets"
End If
If (8.21 > poidsrecu) And (poidsrecu > 8.18) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 8.2
Label6.Caption = "Barquette de 20, 500 Briquets Djeepy"
typedecarton = " barquette de 20, 500 briquets Djeepy"
End If
If (2.79 > poidsrecu) And (poidsrecu > 2.7658) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 2.78
Label6.Caption = "Barquette de 20, 160 Briquets Djeepy"
typedecarton = "Barquette de 20, 160 briquets Djeepy"
End If
If (16.05 > poidsrecu) And (poidsrecu > 16.015) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsatendu = 16.04
Label6.Caption = "Barquette de 24, 576 Briquets"
typdecarton = "Barquette de 24, 576 Briquets"
End If
If (9.81 > poidsrecu) And (poidsrecu > 9.9775) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 9.8
Label6.Caption = "Barquette de 24, 600 Briquets Djeepy"
typedecarton = " Barquette de 24, 600 Briquets Djeepy"
End If
If (20.21 > poidsrecu) And (poidsrecu > 20.175) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 20.2
Label6.Caption = "Présentoir de 24, 576 Briquets"
typedecarton = "Présentoir de 24, 576 Briquets"
End If
If (17.51 > poidsrecu) And (poidsrecu > 17.475) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 17.5
Label6.Caption = "Blister de 24, 576 Briquets"
typedecarton = "Blister de 24, 576 Briquets"
End If
If (12.1 > poidsrecu) And (poidsrecu > 11.9858) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 12
Label6.Caption = "Blister de 24, 576 briquets Djeepy"
typedecaron = "Blister de 24, 576 Briquets Djeepy"
End If
If (12.81 > poidsrecu) And (poidsrecu > 12.775) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 12.8
Label6.Caption = "Brique de 36, 432 Briquets"
typedecarton = " Brique de 36, 432 Briquets"
End If
If (5.86 > poidsrecu) And (poidsrecu > 5.8358) Then
ColorBox.BackColor = vbGreen 'code vert
Range("B1").Offset(Nb_line, 0).Interior.Color = vbGreen
Label5.BackColor = vbGreen
poidsattendu = 5.85
Label6.Caption = "Brique de 36, 180 Briquets"
typedecarton = " Brique de 36, 180 Briquets"
End If
If ColorBox.BackColor <> vbGreen Then
ColorBox.BackColor = vbRed
Range("B1").Offset(Nb_line, 0).Interior.Color = vbRed
Label5.BackColor = vbRed
End If
End Sub
Private Sub ButtonEnd_Click()
Dim test3 As Integer
Dim rep As Integer
rep = MsgBox("Voulez vous vraiment arréter cet OF?", vbYesNo, "Programme de pesée")
If rep = vbYes Then
ActiveWorkbook.SaveCopyAs Filename:="E:\test" + "OF n° " & Ordredefabrication + ".xls"
ButtonBegin.Enabled = True
End If
If rep = vbNo Then
End If
If rep = vbYes Then
test3 = MsgBox("Les valeurs on bien été enregistrées", vbOKOnly, "enregistrement")
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Comm1.PortOpen = False 'fermeture du port
End Sub