F
Fab
Guest
Bonjour,
Il y a un problème avec ma macro.
Dans tous les cas, la condition n'est pour lui pas remplie.
Quelqu'un aurait-il le temps d'y jeter un coup d'oeil svp ?
Merci d'avance.
En mettant p. ex. :
113 à l'invite pour BruitDeFondDeReference
122 à l'invite pour BruitDeFondActuel
La tolérance (de 10 %) est donc :
124.3 pour MargePlus
101.7 pour MargeMoins
=> la condition If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then n'est pas remplie, il devrait passer au THEN. Et il ne le fait pas. Si je lui fais afficher toutes les valeurs stockée dans les variables, elles sont justes.
Sub MesureDuBruitDeFond()
Dim Message1, Title1, Default1
Dim Message2, Title2, Default2
Dim BruitDeFondDeReference, BruitDeFondActuel, MargePlus, Margemoins, Deviation
Message1 = "Indiquer la valeur du bruit de fond reporté dans le certificat de qualité fourni avec l'appareil (en [mV])"
Default1 = ""
BruitDeFondDeReference = InputBox(Message1, Title1, Default1)
Message2 = "Indiquer le bruit de fond mesuré (en [mV])"
Default2 = ""
BruitDeFondActuel = InputBox(Message2, Title2, Default2)
MargePlus = BruitDeFondDeReference * 1.1
Margemoins = BruitDeFondDeReference * 0.9
Deviation = Abs((BruitDeFondDeReference - BruitDeFondActuel) * 100 / BruitDeFondDeReference)
Deviation = Format(Deviation, "0.0")
' Rappatriement dans feuille Résumé
Sheets("Resume").Select
Range("B58").Select
If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then
ActiveCell.Value = "Le test a échoué"
Else
ActiveCell.Value = "Le test est réussi"
End If
Sheets("Test spec 03").Select
Range("B41").Select
If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then
ActiveCell.Value = "Le test a échoué, la déviation du bruit de fond par rapport à la valeur d'origine est de : " & Deviation & " %"
Else
ActiveCell.Value = "Le test est réussi, la déviation du bruit de fond par rapport à la valeur d'origine est de : " & Deviation & " %"
End If
End Sub
Il y a un problème avec ma macro.
Dans tous les cas, la condition n'est pour lui pas remplie.
Quelqu'un aurait-il le temps d'y jeter un coup d'oeil svp ?
Merci d'avance.
En mettant p. ex. :
113 à l'invite pour BruitDeFondDeReference
122 à l'invite pour BruitDeFondActuel
La tolérance (de 10 %) est donc :
124.3 pour MargePlus
101.7 pour MargeMoins
=> la condition If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then n'est pas remplie, il devrait passer au THEN. Et il ne le fait pas. Si je lui fais afficher toutes les valeurs stockée dans les variables, elles sont justes.
Sub MesureDuBruitDeFond()
Dim Message1, Title1, Default1
Dim Message2, Title2, Default2
Dim BruitDeFondDeReference, BruitDeFondActuel, MargePlus, Margemoins, Deviation
Message1 = "Indiquer la valeur du bruit de fond reporté dans le certificat de qualité fourni avec l'appareil (en [mV])"
Default1 = ""
BruitDeFondDeReference = InputBox(Message1, Title1, Default1)
Message2 = "Indiquer le bruit de fond mesuré (en [mV])"
Default2 = ""
BruitDeFondActuel = InputBox(Message2, Title2, Default2)
MargePlus = BruitDeFondDeReference * 1.1
Margemoins = BruitDeFondDeReference * 0.9
Deviation = Abs((BruitDeFondDeReference - BruitDeFondActuel) * 100 / BruitDeFondDeReference)
Deviation = Format(Deviation, "0.0")
' Rappatriement dans feuille Résumé
Sheets("Resume").Select
Range("B58").Select
If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then
ActiveCell.Value = "Le test a échoué"
Else
ActiveCell.Value = "Le test est réussi"
End If
Sheets("Test spec 03").Select
Range("B41").Select
If BruitDeFondActuel < Margemoins Or BruitDeFondActuel > MargePlus Then
ActiveCell.Value = "Le test a échoué, la déviation du bruit de fond par rapport à la valeur d'origine est de : " & Deviation & " %"
Else
ActiveCell.Value = "Le test est réussi, la déviation du bruit de fond par rapport à la valeur d'origine est de : " & Deviation & " %"
End If
End Sub