Bonjour,
voila, j'ai une feuille avec plus de 1600 formules de recherche "=NB.SI.ENS(...)". Évidemment, cela fait ramer Excel, et je souhaite donc passer par macro (le calcul étant à actualiser une fois par semaine, cela me suffit).
Par contre, toutes mes fonctions ne sont pas identiques (arguments différents, somme de 2 ou 3 "NB.SI.ENS", etc...), donc mon idée était de garder les formules sans le '=' devant, et de le rajouter via macro pour faire le calcul, recopier le résultat dans une autre cellule et supprimer le '=' ensuite, et ce, case par case, via une boucle 'for'.
Mais je n'arrive pas à concaténer le = avec ma formule. J'ai essayé de plusieurs manières, suivant les différents sujets sur des forums, mais je n'y arrive toujours pas. Je vous copie / colle ma macro (j'ai désactivé la boucle 'for' pour mes tests) :
Dim i As Integer
Dim Temp As String
Sheets("Liste appli").Select
i = 2
' For i = 2 To 1613
Temp = ActiveSheet.Range("E" & i).Value
Range("E" & i).Select
Range("F" & i).Formula = '=' & Temp
Range("F2").Calculate
Range("E" & i).Select
Selection.Copy
Range("D" & i).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E" & i).Select
Application.CutCopyMode = False
ActiveCell.Value = Temp
' Next i
C'est la ligne "Range("F" & i).Formula = '=' & Temp" qui pose problème.
Merci d'avance !
voila, j'ai une feuille avec plus de 1600 formules de recherche "=NB.SI.ENS(...)". Évidemment, cela fait ramer Excel, et je souhaite donc passer par macro (le calcul étant à actualiser une fois par semaine, cela me suffit).
Par contre, toutes mes fonctions ne sont pas identiques (arguments différents, somme de 2 ou 3 "NB.SI.ENS", etc...), donc mon idée était de garder les formules sans le '=' devant, et de le rajouter via macro pour faire le calcul, recopier le résultat dans une autre cellule et supprimer le '=' ensuite, et ce, case par case, via une boucle 'for'.
Mais je n'arrive pas à concaténer le = avec ma formule. J'ai essayé de plusieurs manières, suivant les différents sujets sur des forums, mais je n'y arrive toujours pas. Je vous copie / colle ma macro (j'ai désactivé la boucle 'for' pour mes tests) :
Dim i As Integer
Dim Temp As String
Sheets("Liste appli").Select
i = 2
' For i = 2 To 1613
Temp = ActiveSheet.Range("E" & i).Value
Range("E" & i).Select
Range("F" & i).Formula = '=' & Temp
Range("F2").Calculate
Range("E" & i).Select
Selection.Copy
Range("D" & i).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E" & i).Select
Application.CutCopyMode = False
ActiveCell.Value = Temp
' Next i
C'est la ligne "Range("F" & i).Formula = '=' & Temp" qui pose problème.
Merci d'avance !