Macro

Résolu
Sourire -  
 Sourire -
Bonjour,

https://www.cjoint.com/?0mcwcHLNADS

Est-ce que quelqu'un aurait la gentillesse me faire une petite marco pour afficher l'année que je souhaite de toutes les colonnes ?

8 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonsoir,

    Soi un peu plus précis sur ce que tu veux comme résultat....
    Masquer les autres colonnes ?
    Leur total en colonne A ?
    Autre chose ?

    eric
    0
  2. tchernosplif Messages postés 714 Statut Membre 249
     
    Bonsoir,

    Voici un exemple en utilisant une liste déroulante et RECHERCHEH

    https://www.cjoint.com/?0mcwBpQAzhH

    Sinon, la fonction DECALER aurait été plus indiqué pour l'exemple... si une âme charitable veut s'y coller.
    0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour à tous,

    créer une macro qui me permet de uniquement avoir l'année 2008 de A,B,C

    En fonction de ce que j'ai compris de ta demande, tu peux essayer cela :

    Public Sub affiche_année()
    Dim ann As Integer
    Dim c As Integer
    Dim l As Integer
    l = 3 ' ligne des années
    ann = Application.InputBox("Saisissez l'année souhaitée", "Choix année")
    For c = 1 To Cells(l, Rows(1).Cells.Count).End(xlToLeft).Column
        If Cells(l, c).Value <> ann And Cells(l, c).Value <> "" Then
            Columns(c).Hidden = True
        Else
            Columns(c).Hidden = False
        End If
    Next c
    End Sub
    
    0
    1. Sourire
       
      Ca à l'air super mais je sais pas comment créer une Inputbox? Tu pourrais me donner un exemple :-)
      0
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Tu n'as pas à créer une Inputbox : c'était pour choisir l'année.
      Si tu saisis en O3 tu mets cette macro qui est automatique au changement de la cellule
      Private Sub Worksheet_Change(ByVal sel As Range)
      If Not Intersect([O3], sel) Is Nothing Then
      Dim c As Integer
      Dim l As Integer
      l = 3 ' ligne des années
      For c = 1 To Cells(l, Rows(1).Cells.Count).End(xlToLeft).Column
          If Cells(l, c).Value <> sel.Value And Cells(l, c).Value <> "" Then
              Columns(c).Hidden = True
          Else
              Columns(c).Hidden = False
          End If
      Next c
      End If
      End Sub
      

      Il faut que ta saisie de date soit sur la même ligne que les autres dates sinon tu ne peux plus saisir.
      0
    3. Sourire
       
      Superbe merci infiniment!
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Sourire
     
    Super tchernosplif c'est du bon travail, eriic si tu veux un exemple tchernosplif a bien compris ce que je voulais mais l'ennui c'est que je voudrais que ca le fasse directement sur les colonnes je ne souhaiterais pas créer des colonnes supplémentaires c'est possible ? Par contre je garde ton fichier tchernosplif c'est une bonne méthode je connaissais pas :-)

    Si tu veux une exemple je t''ai mis le résultat que j'aurais souhaité avoir :-)

    https://www.cjoint.com/?0mcwVhFboUt
    0
    1. tchernosplif Messages postés 714 Statut Membre 249
       
      la macro d'eriiic répond exactement à ton besoin
      0
    2. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      Bonjour,
      Au passage, je vous encourage a essayé la procédure de gbinforme qui résous votre problème d'une manière efficace.
      J'ai inséré sa procédure dans votre fichier, il suffit d'un clic sur le bouton et vous ... !
      Le fichier : https://www.cjoint.com/?3mcxoOen4SN
      0
    3. Sourire
       
      J'aimerais bien mais j'ai jamais créer un inputbox ? :-(
      0
    4. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      Bonjour,
      Croisement de message, regardez à nouveau mon poste, J'ai joint le fichier.
      0
    5. Sourire
       
      Superbe Pingou merci beaucoup pour ton aide! :-) ;-)
      0
  6. Sourire
     
    Gbinforme tu pourrais pas me faire un modèle?
    0
  7. Sourire
     
    Superbe Gbinforme ca fonctionne! Je te remercie infiniment.... :-)
    0
  8. Sourire
     
    Merci beaucoup pour toutes ces astuces
    0