Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Connaitre le nombre de mardi, mercredi etc.. dans une colonne dynamique

libellule85

XLDnaute Accro
Bonjour le forum,

J'ai besoin de votre aide car j'aimerais connaitre le nombre de mardi, mercredi, etc... dans une colonne dynamique.
D'avance je vous en remercie

Libellule85
 

Pièces jointes

  • Essai Libellule 85.xlsm
    11.2 KB · Affichages: 10

cathodique

XLDnaute Barbatruc
Bonjour @libellule85 , @TooFatBoy ,

Un essai en vba, code à mettre dans un module standard
VB:
Option Explicit

Sub CompterNbJoursSemaine()
    Dim ws As Worksheet
    Dim DerniereLigne As Long
    Dim i As Long
    Dim Jours(1 To 7) As Long 'Tableau pour compter les jours de la semaine
    Dim Jour As String
    Dim Msg As String
   
    Set ws = ThisWorkbook.Sheets("Feuil1") ' Modifier le nom de la feuille si nécessaire
    DerniereLigne = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row ' Trouver la dernière ligne de la colonne A

    ' Initialiser le tableau
    For i = 1 To 7
        Jours(i) = 0
    Next i

    ' Compter les jours
    For i = 4 To DerniereLigne
        If IsDate(ws.Cells(i, 1).Value) Then
            Jour = Weekday(ws.Cells(i, 1).Value, vbMonday) ' Utilise vbMonday pour que la semaine commence le Lundi
            Jours(Jour) = Jours(Jour) + 1
        End If
    Next i

    ' Construire le message
    Msg = "Nombre de jours de la semaine :" & vbCrLf
    Msg = Msg & "Lundi: " & Jours(1) & vbCrLf
    Msg = Msg & "Mardi: " & Jours(2) & vbCrLf
    Msg = Msg & "Mercredi: " & Jours(3) & vbCrLf
    Msg = Msg & "Jeudi: " & Jours(4) & vbCrLf
    Msg = Msg & "Vendredi: " & Jours(5) & vbCrLf
    Msg = Msg & "Samedi: " & Jours(6) & vbCrLf
    Msg = Msg & "Dimanche: " & Jours(7) & vbCrLf

    ' Afficher le message
    MsgBox Msg

    ' Écrire les résultats sur la feuille
    ws.Cells(1, 3).Value = "Jour"
    ws.Cells(1, 4).Value = "Nombre"
    For i = 1 To 7
        ws.Cells(i + 1, 3).Value = Choose(i, "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche")
        ws.Cells(i + 1, 4).Value = Jours(i)
    Next i
End Sub

edit: salut @vgendron
 

sousou

XLDnaute Barbatruc
Bonjour à tous, pour le fun
Quelques fonctions destinées aux tableaux
pour ce cas ou bien d'autres
masommesi(feuille,colonne,colonne à regarder, valeur recherchée)
manbsi(.......)
 

Pièces jointes

  • Essai Libellulesousou.xlsm
    19.7 KB · Affichages: 5

Discussions similaires

Réponses
5
Affichages
483
Réponses
7
Affichages
599
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…