Bonjour à tous,
Me voici revenue aujourd'hui pour un problème de fonction créée dans vba.
En effet je voudrais créer une fonction qui permet d'encadrer la valeur d'une cellule et de lui attribuer une valeur conséquente de cette encadrement. Le problème c'est que j'effectue mon encadrement avec des variables dont je fais appel dans ma fonction et du coup ma fonction me renvoie tjs 0. Voici mon bout de code :
ublic Function fonction(cell As Range) As Integer
Dim n As Integer
Dim nb As Integer
Dim a As Integer
nb = Range("'informations générales'!c25").Value 'nbre de série de 10 de nombres me permettant d'encadrer ma valeur de cellule
If cell.Value = 0 Then
fonction = 0
End If
n = 5
a = nb * 10 (nombre totale de chiffre permettant de faire mon encadrement)
If cell.Value > 0 And cell.Value < Sheets("bilan charge partielle").Range("b5").Value Then
fonction = Sheets("bilan charge partielle").Range("c5").Value
End If
For i = 2 To a - 1
If cell.Value >= Sheets("bilan charge partielle").Range("b" & n & "").Value And cell.Value < Sheets("bilan charge partielle").Range("b" & n + 1 & "").Value Then
fonction = Sheets("bilan charge partielle").Range("c" & n + 1 & "").Value
End If
n = n + 1
Next
If cell.Value > Sheets("bilan charge partielle").Range("b" & a + 5 & "").Value Then
fonction = Sheets("bilan charge partielle").Range("c" & a + 5 & "").Value
End If
End Function
je ne vois pas ce qui ne marche pas.
Me voici revenue aujourd'hui pour un problème de fonction créée dans vba.
En effet je voudrais créer une fonction qui permet d'encadrer la valeur d'une cellule et de lui attribuer une valeur conséquente de cette encadrement. Le problème c'est que j'effectue mon encadrement avec des variables dont je fais appel dans ma fonction et du coup ma fonction me renvoie tjs 0. Voici mon bout de code :
ublic Function fonction(cell As Range) As Integer
Dim n As Integer
Dim nb As Integer
Dim a As Integer
nb = Range("'informations générales'!c25").Value 'nbre de série de 10 de nombres me permettant d'encadrer ma valeur de cellule
If cell.Value = 0 Then
fonction = 0
End If
n = 5
a = nb * 10 (nombre totale de chiffre permettant de faire mon encadrement)
If cell.Value > 0 And cell.Value < Sheets("bilan charge partielle").Range("b5").Value Then
fonction = Sheets("bilan charge partielle").Range("c5").Value
End If
For i = 2 To a - 1
If cell.Value >= Sheets("bilan charge partielle").Range("b" & n & "").Value And cell.Value < Sheets("bilan charge partielle").Range("b" & n + 1 & "").Value Then
fonction = Sheets("bilan charge partielle").Range("c" & n + 1 & "").Value
End If
n = n + 1
Next
If cell.Value > Sheets("bilan charge partielle").Range("b" & a + 5 & "").Value Then
fonction = Sheets("bilan charge partielle").Range("c" & a + 5 & "").Value
End If
End Function
je ne vois pas ce qui ne marche pas.