Bonjour,
j'utilise actuellement quelques lignes de codes VBA qui me permettent d’insérer une ligne dans un tableau, en recopiant les formules de la ligne précédente:
Ceci fonctionne très bien, sauf que l'insertion de la ligne nécessite 7s, ce qui commence à être longuet quand je dois insérer plusieurs lignes en suivant!
Quelqu'un a t'il une solution pour raccourcir ce délai?
Merc
PS: je dois signaler que le délai est quasi instantané dans un petit fichier, mais mon fichier est lourd avec ses 24 onglets , nombreuses formules et formats.
Dans ce cas, empêche le calcul automatique avant d'insérer tes lignes que tu rétablis ensuite, de cette façon, le calcul de tes feuilles ne sera fait qu'une seule fois en fin de procédure :
En ce qui me concerne, à la place de copier chaque formule dans chaque cellule, je prépare les formules dans la ligne 2 (par exemple) que je masque. Ensuite, je copie cette ligne 2 sur la ligne active.
Le code devient :
Code:
Sub InsereLigne()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
ActiveCell.EntireRow.Insert
Rows(2).Copy Range("A" & ActiveCell.Row)
Cancel = True
Application.Calculation = xlCalculationAutomatic
End Sub