figer une partie de classeur et filtrer une autre partie

FranQuent

XLDnaute Nouveau
Bonjour à tous,

J'aimerai filtrer une colonne dans un onglet mais le problème est que j'ai deux tableau dans cet onglet et quand je filtremon tableau de gauche cela cache des zones de mon tableau de droite alors que je veux que cela reste visible
Avez vous la solution svp?
 

job75

XLDnaute Barbatruc
Re : figer une partie de classeur et filtrer une autre partie

Re,

En fait ce n'est pas plus cher mais ça va être à vous de bosser un peu.

Il suffit de mettre des signes dollars $ où il faut dans les références, ainsi en L5 au lieu de :

Code:
=SOMME.SI(D:D;101;E:E)
écrire :

Code:
=SOMME.SI($D:$D;101;$E:$E)

En passant, ceci serait plus logique :

Code:
=SOMME.SI($D:$D;K5;$E:$E)
car alors la formule peut se copier en-dessous.

A+
 

job75

XLDnaute Barbatruc
Re : figer une partie de classeur et filtrer une autre partie

Bonjour FranQuent, le forum,

Pour ne pas s'embêter avec les reférences et les $ j'ai modifié la macro :

Code:
'----
Application.EnableEvents = False
Application.DisplayAlerts = False 'évite la recherche du fichier source
'----
      P.Rows(i).Replace "=", "µµ", xlPart
'----
Range("Table" & n).Replace "µµ", "="
'----
Le remplacement du signe = "fige" les formules.

Bien sûr on obtient des #REF! en colonne J mais c'est normal puisque le fichier source n'existe pas.

Toutes les formules sont maintenant restituées correctement.

Fichier (2).

A+
 

Pièces jointes

  • filtre(2).xls
    71.5 KB · Affichages: 43
  • filtre(2).xls
    71.5 KB · Affichages: 45
  • filtre(2).xls
    71.5 KB · Affichages: 44

job75

XLDnaute Barbatruc
Re : figer une partie de classeur et filtrer une autre partie

Re,

1) Avec ma dernière solution les formules en L20 L47 L56 etc... sont bien sûr restituées telles quelles.

Et donc après filtrage elles ne donnent plus le bon résultat.

2) La macro supprime les lignes vides du 2ème tableau.

Pour les conserver mettre un espace en J3 J4 J12 J13 J21 J22 J30 J31 etc...

A+
 

job75

XLDnaute Barbatruc
Re : figer une partie de classeur et filtrer une autre partie

Re,

Comme indiqué au post précédent, la version (2) ne convient pas pour toutes les formules.

Cette version (3) revient aux dollars $ :

1) Pour les introduire facilement j'ai exécuté cette macro :

Code:
Sub ReferencesAbsolues()
Application.EnableEvents = False
Application.DisplayAlerts = False 'évite la recherche du fichier source
[Table2].Replace "D:D", "$D:$D", xlPart
[Table2].Replace "E:E", "$E:$E"
[Table2].Replace "!A", "!$A"
Application.EnableEvents = True
End Sub
2) J'ai mis un espace en colonne J pour toutes les lignes vides (afin de les conserver).

3) J'ai modifié la formule en L5 et suivantes =SOMME.SI($D:$D;K5;$E:$E)

Maintenant tout est bon.

Edit : bien noter que la macro Worksheet_Calculate se déclenche chaque fois qu'on modifie une formule.

Pour l'éviter désactiver la macro en mettant End en 2ème ligne.

A+
 

Pièces jointes

  • filtre(3).xls
    72 KB · Affichages: 45
  • filtre(3).xls
    72 KB · Affichages: 46
  • filtre(3).xls
    72 KB · Affichages: 51
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 247
Messages
2 086 585
Membres
103 247
dernier inscrit
bottxok