Bloqué sur VBA
Résolu
Bonjour,
je suis en train de faire un programme pour m'afficher automatiquement le diamètre de tube cuivre normalisé en fonction du débit dans la canalisation. Sauf que je n'arrive pas à faire s'arrêter le programme sur le bon diamètre.
Voici le programme :
Sub Diamètre_cuivre()
'Variables
Dim a As Single
Dim b As String
Dim c As Integer
Dim d As String
Dim diametre_normalisé(7) As String
Dim Dint(7) As Single
Dim vitesse As Single
Dim debit As Single
Dim section As Single
Dim diametre As Single
'Remplissage tableaux
For a = 0 To 7
b = Cells(2 + a, 8)
diametre_normalisé(a) = b
Next
For c = 0 To 7
b = Cells(2 + c, 9)
Dint(c) = b
Next
vitesse = Cells(2, 3)
debit = Cells(2, 2)
'Calcul
section = debit / vitesse
diametre = Sqr(4 * section / 3.14159)
diametre = diametre * 100
For c = 0 To 7
If diametre <= Dint(c) Then Cells(2, 4) = diametre_normalisé(c) Else Cells(2, 4) = diametre_normalisé(c + 1)
If Dint(c) < diametre And diametre < Dint(c + 1) Then Exit For
Next
End Sub
Je vous explique un peu les variables :
diametre_normalisé : c'est une variable string car les valeurs sont de type "8/10", "10/12", correspondant aux diamètres normalisés.
Dint : C'est le diamètre normalisé intérieur en cm, par exemple pour un tube 8/10 le diamètre intérieur est de 0.8 cm et extérieur de 1 cm.
Voilà, je ne comprend pas comment faire pour les dernières lignes en fait.
Merci ! =)
Quentin
je suis en train de faire un programme pour m'afficher automatiquement le diamètre de tube cuivre normalisé en fonction du débit dans la canalisation. Sauf que je n'arrive pas à faire s'arrêter le programme sur le bon diamètre.
Voici le programme :
Sub Diamètre_cuivre()
'Variables
Dim a As Single
Dim b As String
Dim c As Integer
Dim d As String
Dim diametre_normalisé(7) As String
Dim Dint(7) As Single
Dim vitesse As Single
Dim debit As Single
Dim section As Single
Dim diametre As Single
'Remplissage tableaux
For a = 0 To 7
b = Cells(2 + a, 8)
diametre_normalisé(a) = b
Next
For c = 0 To 7
b = Cells(2 + c, 9)
Dint(c) = b
Next
vitesse = Cells(2, 3)
debit = Cells(2, 2)
'Calcul
section = debit / vitesse
diametre = Sqr(4 * section / 3.14159)
diametre = diametre * 100
For c = 0 To 7
If diametre <= Dint(c) Then Cells(2, 4) = diametre_normalisé(c) Else Cells(2, 4) = diametre_normalisé(c + 1)
If Dint(c) < diametre And diametre < Dint(c + 1) Then Exit For
Next
End Sub
Je vous explique un peu les variables :
diametre_normalisé : c'est une variable string car les valeurs sont de type "8/10", "10/12", correspondant aux diamètres normalisés.
Dint : C'est le diamètre normalisé intérieur en cm, par exemple pour un tube 8/10 le diamètre intérieur est de 0.8 cm et extérieur de 1 cm.
Voilà, je ne comprend pas comment faire pour les dernières lignes en fait.
Merci ! =)
Quentin