[Catégorie modifiée .Net -> VBA] macro pour débutant [Résolu]

Signaler
Messages postés
6
Date d'inscription
mercredi 25 mai 2011
Statut
Membre
Dernière intervention
7 juin 2011
-
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Salut tout le monde,

Je suis totalement nul en macros (je sais à peine en faire par enregistrement)
Et je voudrais justement en créer 1, qui serait je pense très facile pour la plupart des gens de ce forum.

J'ai un graphique reprenant les données d'un tableau en ligne (avec les semaine en abscisse). Chaque semaine, de nouvelles données s'ajoutent dans la semaine concernée. les semaines à venir sont présentes ds le tableau, mais laissant pour le moment les données vides (ex : S23/24/25/26...)

Les semaines non renseignées pour le moment sont cachées, pour ne pas qu'elles apparaissent sur le graphique
je voudrais simplement qu'une macro me permette d'afficher sur le tableau de donénes juste LA semaine suivante non encore renseignée (qui était cachée). Qui me permettrait ainsi de les remplir au fur et à mesure, mais sans avoir à chaque fois à tout afficher puis à cacher les semaine qui ne m'intéressent pas..


J'espere avoir été à peu près clair, c'est difficil comme ça à expliquer... merci pour votre aide !!!

4 réponses

Messages postés
27577
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 février 2020
323
Bonjour,

Alors.. si je reformule :
-Tu as un tableau dont les en-tetes sont les N° de semaine.
-Dans les lignes en dessous, des valeurs sont renseignées jusqu'à la semaine en cours.
-Les semaines suivantes sont masquées.

Tu souhaiterais afficher, lorsque tu lances ta macro, la première semaine masquée de ton tableau. ( et ainsi de suite a chaque execution de la macro)..

Bref, pour se faire, le plus simple serait :
1 - Chercher la première colonne masquée (via une boucle par exemple )
2 - L'afficher ( hidden=false)


Sub Affic_Col_Masquee()


' Je defini la plage de cellules contenant les N° de semaine
Dim Plage_Num_Sem As Range
Set Plage_Num_Sem = Range("A1:AZ1")

'Boucle de traitement qui va rechercher la premiere colonne masquée
For Each c In Plage_Num_Sem
col = c.Column
    'Test si la cellule est masquée..
    If Columns(col).Hidden = True Then
        'si Oui.. rendre la colonne visible et sortir du programme
        Columns(col).Hidden = False
        Exit Sub
    End If
Next
End Sub


Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
Messages postés
6
Date d'inscription
mercredi 25 mai 2011
Statut
Membre
Dernière intervention
7 juin 2011

tain c'est exactement ce que je voulais !

Merci beaucoup !!!
Messages postés
27577
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 février 2020
323
Bonjour,

je t'en prie.

Par contre passe le sujet en résolu STP.

Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
220
Bonjour,

Si aucune masquée avant celle à démasquer, même pas besoin de boucle.
On Error Resume Next '(pour le cas où plus aucune masquée)
  Cells(1, ActiveSheet.Cells.SpecialCells(xlCellTypeVisible).Areas(1).Columns.Count + 1).EntireColumn.Hidden = False



____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est