Insertion formule par VBA trop long

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Florian53

XLDnaute Impliqué
Bonsoir à tous,

Afin d’alléger un fichier excel je souhaite, remplir les formules par macro mais l’exécution est vraiment très longue.

VB:
Sub Macro1()
Dim i As Integer
For i = 3 To 941
''formule Number C3 
        Range("C" & i).FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC[-1],Tableau,2,FALSE)),""0"",VLOOKUP(RC[-1],Tableau,2,FALSE)))"
Next
End Sub

Pouvez vous m'expliquer cette lenteur ?

Merci à vous
 
Bonjour Florian53, bonjour le forum,

Je n'ai pas de donnée dans la feuille, ça prend donc 0,5 seconde.
Essai ainsi,
Code:
Sub Macro1()
Dim i As Integer

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

For i = 3 To 941
            ''formule Number C3
    Range("C" & i).FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC[-1],Tableau,2,FALSE)),""0"",VLOOKUP(RC[-1],Tableau,2,FALSE)))"
Next i

Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

End Sub
 
Bonsoir.
C'est toujours long d'accéder à une plage. Aussi faut il le faire le moins souvent possible. Surtout quand on peut le faire une fois au lieu de 939 !
VB:
Range("C3:C941").FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC[-1],Tableau,2,FALSE)),""0"",VLOOKUP(RC[-1],Tableau,2,FALSE)))"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
3
Affichages
595
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
427
Réponses
3
Affichages
845
  • Question Question
Microsoft 365 VBA sur outlook
Réponses
14
Affichages
1 K
Retour