Masquer lignes weekend dans excel

Bonjour,

Je galère pour trouver un automatisme sous excel pour me cacher les lignes week-end d'une colonne date. Mais les dates se répètent
ex: en A1-A6 je vais avoir 01/09/20
A7-A42 j'ai le 02/09/20

Je cherche soit une macro (étant novice c'est un peu compliqué) qui pourrait me faire cela

Merci de votre aide

Configuration: Windows / Chrome 87.0.4280.66

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour
    Pour ton problème une macro
    Dim i As Long, dl As Long
    dl = Range("A" & Rows.Count).End(xlUp).Row
    For i = 1 To dl
    If Weekday(Range("A" & i).Value, vbMonday) > 5 Then
    Range("A" & i).EntireRow.Hidden = True
    Else
    Range("A" & i).EntireRow.Hidden = False
    End If
    Next

    Pour les cours il y en a plein et gratuite
    https://www.excel-pratique.com/fr/vba/
    http://boisgontierjacques.free.fr/
    https://excel-malin.com/cours-vba-excel-gratuit-en-ligne/
    etc...
    A+ François
    1. Bonjour,
      Dans un premier temps je voudrai résolver mon problème.

      Et oui je cherche une formation sur les VBA mais complètes et pas une formation de 8h00 qui coute 3000€
      1. Contributeur
        je ne pense pas que tu vas "trouver" un automatisme. tu dois le créer, ou le faire créer par quelqu'un.
      2. @yg_beOui et comment je fais pour le créer même dans 1 tableau croisé dynamique ?
      3. Contributeur
        @Zazapeut-être en ajoutant une colonne avec une formule qui retourne 1 ou 0 selon semaine ou week-end?
      4. Contributeur
        @Zazapas besoin de VBA pour mettre une formule.
    2. Bonjour Franc38,

      Ton VBA ne fonctionne pas mais j'ai sûrement fait quelque chose qu'il ne faut pas.
      Déjà comment peut-il savoir sur quelle feuille allez chercher les informations ?

      Merci pour les cours je vais aller voir mais si cela correspond " VBA pour les nuls "
      1. Contributeur
        la macro va chercher les infos dans la feuille courante.
        le mieux est d'ajouter
        dim fl as worksheet
        set fl=sheets("lenomdelafeuille")

        et puis d'ajouter
        fl.
        devant chaque
        Range
        .
      2. Ce serai plus simple si on avait un fichier
        Pour ce faire utilise cjoint.com
        A+ François