Transposition de date selon un nom

Bonjour,

J'ai une feuille "Calendrier" dans lequel je vais pointé plusieurs personne par date et par mois

Dans une deuxième feuille "fiche de présence perso" je souhaite que en sélectionnant une personne dans la liste en haut à droite soit affiché toutes les dates ou la personne est pointé dans la feuille "calendrier"

Merci d'avance

Potpot

Bonsoir Potpot,

, les dates

voici le code pour ta demande... non-testé car pour une raison que j'ignore, à un moment, les cellules-dates dans CALENDRIER affichent une erreur!

Bref, c'est toi qui va essuyer les plâtres!

A coller dans 'FICHE DE PRESENCE'

Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim sh1 As Worksheet
'
Set sh1 = Worksheets("Calendrier")
Set sh2 = Worksheets("TABLE")
'
If Not Application.Intersect(Target, Range("A11")) Is Nothing Then
    For x = 1 To 12
        If [A11] = sh2.Cells(3 + x, 7) Then Cells(1, Columns.Count) = x
    Next
End If
'
If Not Application.Intersect(Target, Range("E1")) Is Nothing Then
    sFlag = [E1]
    iFlag = Cells(1, Columns.Count)
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    With sh1
        iRow = 1
        iLig = 19
        For x = 1 To 6
            For y = iRow To iRow+50
                If IsDate(.Cells(y, 2)) Is True Then
                    For Z = 2 To 8
                        If Month(.Cells(y, Z)) = iFlag Then
                            For k = y + 1 To y+50
                                If .Cells(k, Z) = "" Or IsDate(.Cells(k, Z)) = True Then Exit For
                                If .Cells(k, Z) = sFlag Then
                                    iLig = iLig + 2
                                    Cells(iLig, 2) = .Cells(y, Z)
                                    Exit For
                                End If
                            Next
                        End If
                    Next
                End If
            Next
        Next
    End With
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
'
End Sub

Croisons les doigts!

A+

Merci de réponse. J'ai essayé mais ça n'a pas l'air de fonctionner désolé je n'y comprend pas grand chose en VBA

Bonsoir PotPot,

ça ne risquait pas de fonctionner avec la tonne d'erreurs qui s'y trouvait!

Cela dit, ton fichier est très perturbant! On ne peut savoir ni décider si le format de ton calendrier est figé, non pas en largeur de colonnes mais en nombre de lignes par semaine...

A défaut de ces certitudes qui permettraient un code plus clean, j'ai donc écrit un horrible code bourré de tests dans tous les sens (qui autorise une cinquantaine de clients /jour)... mais qui fonctionne! 8)

Si tu as d'autres précisions, n'hésite pas!

A+

14myosotis.xlsm (277.03 Ko)

Bonjour,

Ca marche nikel merci beaucoup

Bonjour,

Je remercie Potpot d'avoir fait la transition, car le fichier est pour moi à la base.

J'ai cependant, toujours un souci avec ce fichier. En effet, ce dernier ne prend pas en compte dans la feuille de présence, que la personne puisse être présente tous les jours du mois. Il bloque donc à un nombre de date limité...

J'ai beau essayer, je n'arrive pas à comprendre votre code... Pourriez-vous m'aider à ce que le code s'étende sur 31 lignes afin que si la personne est noté sur les 31 journées du mois, la fiche de présence se mette à jour automatiquement ?

Merci d'avance.

11presence-pasa.xlsm (280.90 Ko)

Bonjour Cortesao,

voici ton fichier!

Te convient-il ?

A+

8presence-pasa.xlsm (285.64 Ko)

Bonjour Curulis57,

C'est parfait ! Merci beaucoup.

Rechercher des sujets similaires à "transposition date nom"