Une ligne à débloquer
Bonjour,
Je commence à utiliser les intégrations et je bloque sur cette formule, quelqu'un pourrait m'aider svp ? ^^
Le classeur est la pour voir ce que fais le code:
Sub calcul_avantH()
For i = 1 To 5
Range("W17").Select
Do While ActiveCell.Previous.Value = ""
ActiveCell.Offset(1, 0).Select
Loop
Do While ActiveCell.Previous.Value <> ""
ActiveCell.Formula = "=IF((ActiveCell.Offset(-1 - i, -16).Value - ActiveCell.Offset(-i, -16).Value)>(ActiveCell.Offset(-i - 1, -11).Value + ActiveCell.Offset(0, -11).Value) + (ActiveCell.Offset(0, -3).Value + ActiveCell.Offset(0, -1).Value),(ActiveCell.Offset(-i - 1, -11).Value + ActiveCell.Offset(0, -11).Value), ""Impossible"")"
Loop
Next i
end sub
Bonjour,
Actuellement sur téléphone je ne peux pas te proposer une solution viable directement... Tu peux ajouter des titres à ta feuille Excel s'il te plaît on ne sait pas à quoi correspond tes données de temps... J'aurais bien une solution pour toi qui ne dépendrai pas de la position des cellules mais sans titres je t'avoue que je n'ai même pas envie de la rédiger
Mon idée est de créer une fonction personnalisée mais sans avoir le nommage de tes paramètres c'est incompréhensible pour l'utilisateur lambda
Function CALCT(Temps1, Temps2, Temps3, Temps4, Temps5, Temps6, Optional Texte_si_erreur As String = "Impossible") As Variant
Application.Volatile
If Temps1 - Temps2 > Temps3 + Temps4 + Temps5 + Temps6 Then
CALCT = (Temps3 + Temps4 + Temps5 + Temps6)
Else
CALCT = Texte_si_erreur
End If
End Function
Désolé si il y a des fautes de frappe comme dit je suis sur téléphone...
Comme ça dans la cellule que tu veux tu mets
=CALCT($G$19;$G$18;$L$18;L20;T20;V20)
Et si tu souhaites un texte autre que "Impossible" tu le mets entre guillemets à la fin
=CALCT($G$19;$G$18;$L$18;L20;T20;V20;"Bouh")
Avec ça tu incrémente où tu veux, pas besoin de boucle VBA c'est un clic de souris.