Supprimer les noms d’une feuille lors de sa copie d’un classeur à un autre

Bonjour à tous,

Voici un petit post invité de la part de Céline Brien (formatrice en bureautique au Québec)...

conserver_noms1 1

----------

Voici un truc fort simple, mais qui sauve la vie en Excel.

Si vous devez copier une feuille d’un classeur vers une autre classeur, et que le classeur d’origine contient des champs nommés, tous les champs nommés suivront la feuille vers le classeur de destination. Ceci n’est pas souhaitable, puisque les champs nommés continueront à pointer vers le fichier d’origine.

Pour éviter de mêler les champs nommés du classeur d’origine avec ceux du classeur de destination :

1. Commencer par copier la feuille vers un nouveau classeur ;

2. Supprimer les champs nommés ;
Lors de la suppression des noms, sélectionnez tous les noms, même les noms de tableau, et cliquez sur le bouton Supprimer. Tous les noms seront supprimés, SAUF les noms des tableaux.
Si un tableau du classeur d’origine porte le même nom qu’un tableau du classeur de destination, Excel ajoutera un numéro au nom du tableau provenant du classeur d’origine.

3. Déplacer ensuite la feuille du nouveau classeur vers le classeur de destination.

Et voilà le travail 😉

Bye,

Céline Brien

-----------

Automatiser la répétition des étiquettes dans un tableau croisé dynamique

Bonjour à tous,

Dans un post précédent, j'avais montré comment répéter les étiquettes de lignes.

Cependant, si vous avez beaucoup de tableaux croisés dynamiques, ceci peut s'avérer assez fastidieux.
Un ancien élève m'a d'ailleurs remonté un bug à ce sujet - perte de la répétition des étiquettes lors de l'actualisation.

Voici donc un petit code qui modifie l'option pour tous les tableaux croisés dynamiques du classeur :

Sub Mise_a_jour_repeter_toutes_les_etiquettes()
Dim pvt As PivotTable
Dim Wks_feuile As Worksheet
'on parcourt toutes les feuilles
For Each Wks_feuile In ThisWorkbook.Worksheets
'on parcourt tous les tableaux croisés dynamiques
For Each pvt In Wks_feuile.PivotTables
pvt.RepeatAllLabels _
xlRepeatLabels
Next
Next
End Sub

En espérant que ceci puisse vous aider !

A bientôt.

Gaetan

Lister tous les tableaux de toutes les feuilles

Bonjour à tous,

Voici une courte macro qui m'a été envoyée par D@niel et que je partage ici.

Elle permet de lister tous les tableaux de toutes les feuilles.

Voici le code et ici le fichier.

Voici le code de la macro :
Option Explicit
Sub JeListeMesNomsDeTableaux()
    Dim MaFeuille As Worksheet
    Dim MonTableau As ListObject
    Dim MonCompteurDeFeuilles As Byte
    Dim MonCompteurDeTableaux As Byte
    For Each MaFeuille In ThisWorkbook.Worksheets
        MonCompteurDeFeuilles = MonCompteurDeFeuilles + 1
        Range("RngMesNoms").Offset(MonCompteurDeFeuilles + MonCompteurDeTableaux, 0) = MaFeuille.Name
        For Each MonTableau In MaFeuille.ListObjects
            MonCompteurDeTableaux = MonCompteurDeTableaux + 1
            Range("RngMesNoms").Offset(MonCompteurDeFeuilles + MonCompteurDeTableaux - 1, 1) = MonTableau.Name
        Next MonTableau
    Next MaFeuille
    Range("RngMesNoms").Offset(1, 4).Select
        Selection.ListNames
    If MsgBox("On va tout effacer !", vbYesNo) = vbYes Then
    Cells.ClearContents
    End If
End Sub

Cordialement.

Gaetan Mourmant