Afficher une colonne masquée grâce au nom

Bonsoir à tous,

Etant novice dans le domaine des macros mais très très intéressé par ces derniers, j'aimerais vous demander de l'aide pour une macro sur laquelle j'ai passé plusieurs heures cette après-midi !

Donc, j'ai un fichier comportant une trentaine d'onglets. c'est un fichier intégrant les données de marques sur plusieurs semaines. Il y a 2 onglets par titre (un pour les données de la marque et le deuxième avec son CA). J'en suis à la semaine 45 (ça va jusqu'à la semaine 52 et celles-ci sont masquées).

Je dois, toutes les semaines, le compléter et donc toutes les semaines, je dois afficher la semaine qui m'intéresse, masquer les suivantes et compléter mon tableau. Et cela, sur les 30 onglets...

Je ne veux pas afficher la colonne de la semaine qui m'intéresse car la Semaine 46, par exemple, ne se trouvera pas sur la m^meme colonne dans d'autres onglets.

J'ai recherché une ligne de code me permettant d'afficher la semaine qui m'intéressent, et seulement celle-là, et ce, sur tous les onglets.

J'ai donc essayé d'intégrer ce code :

Public Sub AfficherMasquerTexte()

With ActiveWindow.View

.ShowHiddenText = Not .ShowHiddenText

End With

End Sub

Mais rien n'y fait..je voudrais faire apparaitre la semaine 46 et j'ai beau écrire "Semaine 46", à n'importe quel endroit du code, rien ne fonctionne.

De plus, j'ai essayé d'y inclure ce code :

For Each Worksheet in Worksheets

Et même résultat...Je ne suis pas un assisté, j'ai réellement essayé toutes les tournures possibles mais aucun (bon) résultats.

Pouvez-vous alors m'aider ?

J'ai supprimer une bonne partie des onglets étant donné que mon fichier fait plus de 800ko.

Je vous remercie d'avance !!!!

Bonsoir,

Tout d'abord, avant d'utiliser (peut-être) le code que je vais te donner plus bas, il faut que tu adaptes tous tes onglets.

Je pars du principe qu'à la place de masquer les colonnes "inutiles", on garde toutes les colonnes, en ayant "figé les volets" dans tous les onglets.

Dans le fichier joint, j'ai pris chaque onglet à tour de rôle, afficher toutes les colonnes, et "Figer les Volets" (Ruban "Affichage", "Figer les volets").

A l'ouverture du fichier, on calcule le numéro de la semaine de la date du jour

Puis, dès que tu changes d'onglet, la colonne correspondant au numéro de la semaine se met juste à côté des colonnes fixes.

Regarde, et reviens si tu n'y arrives pas

PS, il faut bien sûr que les numéros de semaine soient dans la 1ère ligne de chaque onglet, et que la syntaxe soit "Semaine 00"

Le code dans le "ThisWorkbook" :

Public NumS As String
Private Sub Workbook_Open()
Call num_sem
End Sub
Sub num_sem() 'calcul du numéro de la semaine
Dim d2&, d3&, d4&, r&
r = CDate(Date - 28)
d2 = r + 1 - Weekday(r, vbMonday)
d3 = DateSerial(Year(d2 + 3), 1, 1)
d4 = d3 + 1 - Weekday(d3, vbMonday) - (Weekday(d3, vbMonday) > 4) * 7
NumS = "Semaine " & Format((d2 - d4) \ 7 + 1, "00")
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim C As Range
Set C = Sh.Rows(1).Find(NumS)
If Not C Is Nothing Then
    Application.Goto C, True
End If
End Sub

Le fichier :

Bonne soirée

Bonjour,

Tout d'abord, merci pour ton retour.

J'ai bien ouvert mon fichier, afficher toutes les colonnes et je les ai figées.

Jusqu'ici tout va bien.

Mais concernant le calcul de la semaine...dois-je créer un calcul moi-même ? J'ai inclut le code après avoir figé les volets comme prévu, enregistré le tout mais rien ne se produit : toutes les colonnes après la semaine 46 (celle qui m'intéresse) reste affichées.

Je pensais qu'après avoir intégré le code, les colonnes qui suivent la semaine 46 se masqueraient automatiquement mais ça n'est pas le cas.

J'ai tout enregistré, fermé le fichier pour le ré-ouvrir ensuite et toujours pareil.

Une idée sur l'erreur que j'aurais pu commettre ?

Merci encore pour ta réponse cela dit, je suis déjà plus avancé qu'au début

Bonne journée,

Bonsoir,

Effectivement, je ne masque aucune colonne, ce qui reste plus souple pour une recherche...

Tu as juste la bonne colonne qui s'affiche à côté des volets.

Bon W-E

Ok merci pour l'aide !

Rechercher des sujets similaires à "afficher colonne masquee nom"