Bonjour à tous
Je me traîne depuis quelques heures une incompatibilité de type qui m'agace au plus haut point!!!
Voilà mon problème :
Sur un onglet Feuille_entree, j'ai un bouton auquel j'ai affecté un userform avec 3 boutons options et 5 textbox en tout. Je fonctionne sous forme de "noeuds". En appuyant sur valider, elles s'affichent dans un tableau située sur le même onglet (colonnes M, N, O et P). Ce tableau se remplit au fur et à mesure que je saisis des valeurs.
Textbox 1 : temps départ (colonne M)
Textbox 2 : volume départ (colonne N)
Textbox 3 : temps arrivée (colonne O)
Textbox 4 : volume arrivée (colonne P)
A part la ligne 0, je saisis des valeurs dans les textbox 3 et 4 car :
temps et volume noeud d'arrivée à la ligne k = temps et volume noeud de départ à la ligne k + 1
Sur un autre onglet, Feuil1,
Dim Dlig1, Dlig2, Dlig3, Dlig4 As Long
With Sheets("Feuille_entree")
Dlig1 = .Range("M" & Rows.Count).End(xlUp).Row
Dlig2 = .Range("N" & Rows.Count).End(xlUp).Row
Dlig3 = .Range("O" & Rows.Count).End(xlUp).Row
Dlig4 = .Range("P" & Rows.Count).End(xlUp).Row
.Range("M" & Dlig1 + 1).Value = TextBox1.Value
.Range("N" & Dlig2 + 1).Value = TextBox2.Value
.Range("O" & Dlig3 + 1).Value = TextBox3.Value
.Range("P" & Dlig4 + 1).Value = TextBox4.Value
End With
Pas de problème cela fonctionne.
Par contre, j'ai un autre onglet Feuil1 où j'ai un tableau qui se remplit automatiquement avec pas mal de formules. Elles fonctionnent, pas de soucis.
En fait, j'effectue une boucle à partir de la dernière ligne remplie et les valeurs saisies dans la textbox3 et la textbox 4 sont les conditions d'arrêt de ma boucle. Sur Feuil1, le temps est sur la colonne A et le volume sur la colonne D.
With Sheets("Feuil1")
Dlig = .Range("A" & Rows.Count).End(xlUp).Row
End With
Dim i As Long, v As Long
v = 1000
For i = (Dlig + 1) To v
.... formules qui marchent
If (CDbl(TextBox4.Value) = CDbl(Sheets("Feuil1").Range("D" & i).Value) And CDbl(TextBox3.Value) = CDbl(Sheets("Feuil1").Range("A" & i).Value) And OptionButton1 = True) Or (CDbl(TextBox4.Value) = CDbl(Sheets("Feuil1").Range("D" & i).Value) And (OptionButton2 = True Or OptionButton3 = True)) Then
Exit For
End If
Next i
Suivant les 3 options dans l'userform, il y a 3 conditions d'arrêt mais quand je lance la boucle, cela me calcule une ligne et le message "incompatibilité de type " apparaît.
Pouvez-vous m'aider à sortir de cette impasse ?
Cordialement
Romhin