Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Ajout ou suppression de ligne(s) très très très long

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous

Dans l'une de mes "Usines à gaz", j'ai un souci d'ajouts et de suppressions de lignes qui sont très très longs, en moyenne 2 minutes et ++.
Plus curieux encore, ça prend le même temps pour les feuilles sans code VBA
Je n'arrive pas à trouver pourquoi c'est si long Grrrr !

Malheureusement, je ne peux pas joindre le fichier à problème car il est très lourd et contient mes données confidentielles.
(Mais si c'est indispensable, je prendrai le temps de l'alléger et de supprimer les données confidentielles).

Voici les codes d'ajouts/suppressions :
VB:
Sub ajoute_ligne()
Dim t#
t = Now
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
    ActiveCell.EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Application.EnableEvents = True
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Exécution en " & Mid(Format(Now - t, "hh:mm:ss"), 4)
'MsgBox "Exécution en " & Minute(t) & " minute(s) et " & Second(t) & " seconde(s)"
End Sub
Sub suppr_ligne()
Dim t#
t = Now
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
    ActiveCell.EntireRow.Delete Shift:=xlUp
Application.EnableEvents = True
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Exécution en " & Mid(Format(Now - t, "hh:mm:ss"), 4)
'MsgBox "Exécution en " & Minute(t) & " minute(s) et " & Second(t) & " seconde(s)"
End Sub
Dans le fichier test joint, c'est instantané et ...
Dans mon "Usine à gaz", en moyenne 2 minutes et ++. Plus curieux encore, ça prend le même temps pour les feuilles sans code VBA
Auriez-vous des pistes de recherches ?
Un grand merci à tous...
 

Pièces jointes

  • ligne ajout suppr.xlsm
    19.8 KB · Affichages: 5
Dernière édition:
Solution
Bonjour Lionel, le forum,

Sélectionne toutes les cellules et menu Accueil => Effacer => Effacer les formats.

Pour une feuille et pour toutes ensuite si nécessaire.

L'ajout et suppression sont-ils devenus normaux ?

Si oui remets les formats ensuite.

A+

Usine à gaz

XLDnaute Barbatruc
Bonjour laurent950
J'ai le souci sur n'importe quelle feuille.
Mes 3 feuilles principales ont pour l'une +de 12000 lignes, les 2 autres +de 5000.
Les autres feuilles ont de 50 à 150 lignes

Pour supprimer ou ajouter des lignes :
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
quelle que soit la feuille

 

laurent950

XLDnaute Barbatruc
Faite un essaie
ActiveSheet.Calculate (On peut demander le calcul d'une seule Feuille)

[ °°° Code °°° ]
Application.Calculation = xlCalculationManual
[ °°° Code °°° ]
ActiveSheet.Calculate
Application.Calculation = xlCalculationAutomatic
[ °°° Code °°° ]
 
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Bon sang : j'en apprends à chaque instant. je te remercie
Je teste
 

Usine à gaz

XLDnaute Barbatruc
Il n'en veut pas, le bougre lol

 

job75

XLDnaute Barbatruc
Bonjour Lionel, le forum,

Sélectionne toutes les cellules et menu Accueil => Effacer => Effacer les formats.

Pour une feuille et pour toutes ensuite si nécessaire.

L'ajout et suppression sont-ils devenus normaux ?

Si oui remets les formats ensuite.

A+
 

Usine à gaz

XLDnaute Barbatruc
Bjr Gérard , le Fil , le Forum ,
Bjr Gérard , le Fil , le Forum ,

Nickel : Test réussi
ça provenait des formats...
Je vais affiner pour voir quels formats posent problème.
Merci Gérard
 

job75

XLDnaute Barbatruc
Ce qui pose problème c'est l'accumulation de formats mis en place successivement n'importe comment.

Efface-les tous et remets-les en place un par un correctement sur les plages nécessaires.
 

Discussions similaires

Réponses
7
Affichages
528
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…