XL 2013 Transfert donnée sur feuille congé

candido57

XLDnaute Occasionnel
Bonjour,

Je voudrais éditer une feuille de congé en auto via un tableau Excel.
Le fichier à 12 onglets , de janvier à décembre pour poser des congés et une dernière feuille congé
pour éditer en auto le congé avec jour et nom de la personne
Par exemple en mai, j’ai Mme DURAND qui prend du 3 au 14 mai.
et Mme LEGLISE prend du 10 au 21 mai >> Mais éditer sans le jour férié > je pense que ma formule est correcte.
En gros je voudrais que lorsque je sélectionne les dates (les cellules) par exemple du 3 mai au 14 mai (D5 à O5), que l’on copie la première date D5 = 3 mai dans feuille congé en B5 et la dernière cellule selectionnée O5 et copier dans feuille congé en E15. Puis en même temps copier le nom en A5 dans feuille congé en D10.
Pouvez vous m’aider pour effectuer une macro pour éditer cette feuille suivant la personne concernée? Je ne sais pas comment faire

Merci d'avance
 

Pièces jointes

  • Congé 2021 TEST.xls
    373 KB · Affichages: 18

Lolote83

XLDnaute Barbatruc
Bonjour CANDIDO57,
Ton fichier en retour avec une macro que tu déclenches par clic-droit suite à la sélection sur un mois choisi.
Voir onglet DEMANDE.
Enfin, si j'ai bien compris la demande.
@+ Lolote83
 

Pièces jointes

  • Copie de CANDIDO57 - Congé 2021 TEST.xlsm
    143.1 KB · Affichages: 14

candido57

XLDnaute Occasionnel
Bonjour Lolote83,
C’est super, c’est exactement ça, mais j’ai essayé à cheval entre 2 mois, mais ça fonctionne que sur la feuille ouverte.
Par exemple du 25 octobre au 5 novembre. mais pour le reste super bien .

Merci beaucoup.
 

candido57

XLDnaute Occasionnel
Bonjour Lolote83,
Si je sélectionne 5 cellules du mois d’octobre (en fin de mois) et ensuite je vais sur le mois de novembre, j'appuis sur ctrl et je sélectionne la suite du mois de novembre (début du mois), puis un click droit pour transférer les données sur la feuille congé. Je vois ça comme ça, je ne c’est pas si c’est possible.
Sinon ce n'est pas grave, je ferais des feuilles de congés de mois en mois, c’est déjà très bien comme ça.
Comment puis je voir ta macro pour que j'essaie de comprendre le cheminement ?
En tout cas merci beaucoup
Bonne journée
 

Lolote83

XLDnaute Barbatruc
Re bonjour CANDIDO57,
Pour accéder à la macro, faire ALT+F11.
Tu vas ensuite sur le module Mod_Repac.
Code:
Sub RecupCongé(xPlage)
    xLig = Range(xPlage).Row
    xDeb = Split(xPlage, ":")(0): xColDeb = Split(xDeb, "$")(1)
    xFin = Split(xPlage, ":")(1): xColFin = Split(xFin, "$")(1)
    xNom = Range("A" & xLig)
    xDatDeb = Range(xColDeb & "4")
    xDatFin = Range(xColFin & "4")
    With Sheets("Feuille congé")
        .[D10] = xNom
        .[B15] = xDatDeb
        .[E15] = xDatFin
    End With
    MsgBox "Mise à jour effectuée", vbInformation, "Feuille congé"
End Sub

Cette macro est appelée par chaque onglet
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    If Selection.Count < 2 Then
        MsgBox "Une selection doit contenir au moins deux cellules", vbCritical, "ERREUR SELECTION"
    Else
        Call RecupCongé(Selection.Address)
    End If
End Sub
@+ Lolote83
 

Discussions similaires

Réponses
0
Affichages
980

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote