Tableau trop lourd

mikl63

XLDnaute Nouveau
Salut,
j'utilise un tableau excel pour faire mes comptes.
Tableau très simple puisqu'il n'existe que 3 colonnes et une formule toute simple
Mon problème est que lorsque je souhaite créer une mise en forme conditionnelle, elle alourdit énormément mon fichier et excel devient très long à ouvrir le fichier.
Mon but est uniquement de colorer la ligne des totaux en jaune, d'afficher le texte en gras et de faire un encadrement en gras de la ligne.
Donc ma MEFC était un truc du genre : si la case A est une date, colorier la ligne en jaune...
Ben pas moyen, je n'arrive plus à le faire et sur l'ancien fichier que j'ai et qui fonctionnait, ca bug sévère.
Quelqu'un saurait m'expliquer pourquoi mon fichier d'origine est devenu très lourd ?
Je joins le tableau en cours : test est celui où la MEFC fonctionne mais le fichier est trop lourd
test2 sans MEFC.
test : Ce lien n'existe plus
test2 : Ce lien n'existe plus

Merci d'avance,
 

DoubleZero

XLDnaute Barbatruc
Re : Tableau trop lourd

Bonjour, mikl63, François :), le Forum,

Pour alléger le fichier, faire l'essai de cette macro, sur une copie du fichier de travail après suppression de la MFC existante :

Code:
Option Explicit
Sub MFC_sous_totaux()
Dim c As Range
For Each c In Sheets("2013").Range("A2", Range("A65536").End(xlUp))
    If IsDate(c) Then
        With c.Resize(, 3)
            .Interior.ColorIndex = 36
            .Font.Bold = True
            .Font.Size = 11
        End With
    
        With c.Resize(, 3).Borders(xlEdgeTop)
            .Weight = xlMedium
        End With
    
        With c.Resize(, 3).Borders(xlEdgeBottom)
            .Weight = xlMedium
        End With
    End If
Next
End Sub

A bientôt :)

P. S. : Bonjour, Staple1600 :)
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Tableau trop lourd

Bonjour à tous


Pour le plaisir de croiser 00 et pour rester dans la quête de l'allégement ;)
Code:
Sub MFC_sous_totauxREGIMEPHASEI()
Dim c As Range
For Each c In Sheets(1).Range("A2", Range("A65536").End(xlUp))
    If IsDate(c) Then
        With c.Resize(, 3)
        .Borders(8).Weight = xlMedium
        .Borders(9).Weight = xlMedium
        .Interior.ColorIndex = 36
        .Font.Bold = True
        .Font.Size = 11
        End With
    End If
Next
End Sub
Code:
Sub MFC_sous_totauxREGIMEPHASEII()
Dim c As Range
For Each c In Sheets(1).Range("A2", Range("A65536").End(xlUp))
    If IsDate(c) Then
        With c.Resize(, 3)
        .BorderAround 1, -4138
        .Interior.ColorIndex = 36
        .Font.Bold = True
        .Font.Size = 11
        End With
    End If
Next
End Sub
 

mikl63

XLDnaute Nouveau
Re : Tableau trop lourd

J'ai galéré un peu avec cette macro et le résultat est qu'elle a alourdit le fichier : 1.63 Mo
De plus, ce système de macros m'oblige à afficher la macro puis exécuter à chaque fois ? pas moyen de rendre ça automatique ?
 

mikl63

XLDnaute Nouveau
Re : Tableau trop lourd

Et ben voilà ! j'ai recrée mon tableau à 0.
Ma formule fonctionne, ma MEFC aussi et le tableau ne pèse que 59 Ko pour 163 lignes.
Je ne sais toujours pas pourquoi le 1er était si lourd mais l'important est que ça fonctionne maintenant.
Et en plus, j'ai appris à faire ça tout seul à force de tâtonner, je ne savais pas le faire la semaine dernière.
Prochain étape : se familiariser avec les macros
Que peut on faire avec et comment les gérer ?
 

sixair

XLDnaute Junior
Re : Tableau trop lourd

Bonjour,
peut-être une explication ?
Il y a ce qu'on voit ou pas...
ecran001.jpg

Cdlt
 

Pièces jointes

  • ecran001.jpg
    ecran001.jpg
    16.7 KB · Affichages: 90
  • ecran001.jpg
    ecran001.jpg
    16.7 KB · Affichages: 93

Efgé

XLDnaute Barbatruc
Re : Tableau trop lourd

Bonjour à tous
Une idée:
Supprimer toutes les lignes et colonnes vides de toutes les feuilles puis utiliser ceci :

VB:
Sub tentative()
Dim ThF As Worksheet, F As Worksheet
Set ThF = ActiveSheet
Application.ScreenUpdating = False
        For Each F In Worksheets
       F.Activate
      ActiveSheet.UsedRange
Next F
ThF.Activate
End Sub

Ca m'a déja sauvé.
Cordialement
 

Discussions similaires

Réponses
2
Affichages
209

Membres actuellement en ligne

Statistiques des forums

Discussions
312 413
Messages
2 088 199
Membres
103 763
dernier inscrit
p.michaux