Bonjour
Tu n'as pas eu bcp de réponses!
As-tu trouver ce que tu cherchais?
Puis-je te faire qq remarques?
1) Column et Row suffisent, pas besoin de Columns en plus (détail)
2) Beaucoup plus grave: Tu mélanges dans une formule des codes et valeurs de ta macro avec des codes et valeurs de la feuille, c'est imposible!!
ActiveCell.FormulaR1C1 = "=SommeHeure(" & convertdec(heureffecSSIS(Range("A" & i).Value)) & " ,RC[4])"
une fois sorties de la macro, les variables (SommeHeure) et Range("A" & i).Value n'ont plus aucune valeur, donc tu ne peux les inscrire dans une FORMULE sur la feuille.
si tu veux utiliser des valeurs de variables, inscris-les d'abord sur ta feuille, puis, dans ta formule inscris les références aux cellules voulues, et de façon appropriée!
si tu mets par exple la valeur de SommeHeure en col H de la même ligne, soit:
Range("H" & i).Value = SommeHeure
tu mets ds ta formule: "= RC8
quant à la suite: convertdec(heureffecSSIS(Range("A" & i).Value)) ???
admettons que convertdec(heureffecSSIS( fonctionne, ceci en revanche, jamais! :
Range("A" & i).Value))
au mieux, tu dois écrire: RC1 , si tu es bien ds une colonne différente de A !
une fois que tu auras rectifié ta formule pour qu'elle fonctionne, tu peux fixer la valeur de la cellule avec ceci:
ActiveCell.Value = ActiveCell.Value
tu as alors une valeur et non plus une formule.
et si tu veux, tu supprimes la valeur en colonne H:
Range("H" & i).Value = ""
mêmes remarques pour la suite:
'mise a jour SSIS pompiers
For i = Range("debut_calcul_heure_SSIS_pompiers" ).Columns.Row To Range("fin_calcul_heure_SSIS_pompiers" ).Columns.Row
Range(colonne & i).Select
ActiveCell.FormulaR1C1 = "=SommeHeure(" & convertdec(heureffecSSIS(Range("A" & i).Value)) & " ,RC[4])"
Cordialement
Je reste à également à ta disposition pour des renseignements si je me suis mal exprimé.
Et MERCI aux pompiers qui font un travail formidable!