Création onglets à partir d'un modèle pour les jours ouvréS
Résolu
PYGOS69
Messages postés
452
Date d'inscription
Statut
Membre
Dernière intervention
-
Le Pingou Messages postés 12275 Date d'inscription Statut Contributeur Dernière intervention -
Le Pingou Messages postés 12275 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un fichier avec 2 onglets :
1er onglet avec une liste d'agents
2ème onglet comme Modèle
Je souhaite copier l'onglet "Modèle" et créer tous les onglets par jour ouvré en automatique.
C'est à dire, à partir de l'onglet Modèle, créer les autres onglets pour les jours ouvrés du mois demandé.
Exemple : Pour le fichier du mois de Février 2022 demandé,
Copie de l'onglet Modèle et création de tous les onglets représentant les jours ouvrés .
1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28 (Nom des onglets)
Pour le fichier du Mois de Mars 2022 demandé,
Copie de l'onglet Modèle et création de tous les onglets représentant les jours ouvrés .
1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31(Nom des onglets)
Etc ......
Merci d'avance,
Bien cordialement,
J'ai un fichier avec 2 onglets :
1er onglet avec une liste d'agents
2ème onglet comme Modèle
Je souhaite copier l'onglet "Modèle" et créer tous les onglets par jour ouvré en automatique.
C'est à dire, à partir de l'onglet Modèle, créer les autres onglets pour les jours ouvrés du mois demandé.
Exemple : Pour le fichier du mois de Février 2022 demandé,
Copie de l'onglet Modèle et création de tous les onglets représentant les jours ouvrés .
1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28 (Nom des onglets)
Pour le fichier du Mois de Mars 2022 demandé,
Copie de l'onglet Modèle et création de tous les onglets représentant les jours ouvrés .
1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31(Nom des onglets)
Etc ......
Merci d'avance,
Bien cordialement,
Configuration: Windows / Firefox 78.0
10 réponses
-
Bonjour,
Et si vous mettiez un fichier avec exemple rempli manuellement à disposition , se serait plus profitable pour vous aider!
-
..../
Voici le fichier du mois de janvier avec les onglets créés manuellement.
https://www.cjoint.com/c/LBboR7FEJlo
Merci !
-
-
Boujour,
Merci du retour je regarde pour une solution.
Patience.
-
Bonjour,
Je vous propose la solution provisoire qui pourra être finalisée selon vos commentaires!
Le lien : https://www.cjoint.com/c/LBbvxJrrLen
-
Bonjour,
Merci pour ce code vba !
J'ai testé pour tous les mois, ok pour la prise en compte du Lundi au Vendredi (sans Weekend)
Pour le mois de février, le code ne fonctionne pas .... du dimanche au ..... et création du 29/02/2022, 30/02/2022 et 31/02/2022.
Est-il possible de ne pas créer les jours qui sont fériés ou non travaillés ?
Encore Merci pour ce travail !
Cdlt
PYGOS69
-
-
Bonjour,
Merci du retour, je vais contrôler le petit problème de février !
Pour les jours fériés, me fournir la table concernant de votre pays!
-
.../
Merci ! Voici le fichier avec les jours fériés et non travaillés à prendre en compte....
https://www.cjoint.com/c/LBckkGIZUiq
J'ai ajouté quelques lignes de code pour adapter votre travail à mes besoins...
Encore Merci !
Cdlt
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bonjour,
Votre fichier avec prise en compte des jours fériés. En plus j’ai modifié la référence de la plage nommée [modele] au cas ou vous ajouter /supprimer un/des agent/s se sera automatiquement intégrer.
Le lien : https://www.cjoint.com/c/LBcow5LlMFn
-
..../
Un grand Merci ! C'est exactement ce que je cherchais ....
J'ai une partie de nom code qui ne réponds plus (que je viens de rajouter)
Dim Resultat As Integer
Resultat = CreateObject("WScript.Shell").Popup("La création des feuilles par jour ouvré est terminée !" & Chr(10) & Chr(10) & "Merci pour votre patience !" & Chr(10) & Chr(10) & "Cette fenêtre se fermera automatiquement dans 2 secondes...", 2, "Information de Fin de traitement")
Le timer ne fonctionne plus ....Avez-vous une idée !
Bonne fin de journée !
-
-
Bonjour,
J'ai introduit la ligne de code dans vote fonction [MEF] et déclaré la variable Resultat comme Variant.
Le message s'affiche est se ferme après 30 secondes environ. -
Bonjour,
Si vous êtes avec vin64bts, essayez comme suit:Declare PtrSafe Function MessageBoxTimeout Lib "user32.dll" Alias "MessageBoxTimeoutA" ( _
ByVal hwnd As Long, _
ByVal lpText As String, _
ByVal lpCaption As String, _
ByVal uType As Long, _
ByVal wLanguageID As Long, _
ByVal lngMilliseconds As Long) As Long
Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Public Sub test_msgbox_temp_2()
Const cmsg As String = "Msgbox avec tempo de 2s"
Const cTitle As String = "Popup"
Dim retval As Long
retval = MessageBoxTimeout(FindWindow(vbNullString, Title), cmsg, cTitle, 4, 0, 2000) 'en ms
End Sub
-
Bonjour,
Je constate qu'il n'y a aucune date dans le fichier, je suppose que c'est pour Janvier et que pour Février vous créez un nouveau classeur.... est-ce bien cela... ?
-
Merci du retour.
Concernant l'erreur pour le mois de février il s'agit d'un caractère erroné de ma part (c'est corrigé)
La suite, patience.
-
Bonjour,
Pour en dire plus il faudrait que je sache ou est ajouté cette instruction ...?
Note la déclaration : Dim Resultat As Integer n'est pas correct car la variable Resultat est probablement de type Variant (en tout cas pas INTEGER
-
Bonjour,
Next i ' suivante Sheets("Modèle").Select ' sélection de la feuille Modèle Application.ScreenUpdating = True Resultat = CreateObject("WScript.Shell").Popup("La création des feuilles par jour ouvré est terminée !" & Chr(10) & Chr(10) & "Merci pour votre patience !" & Chr(10) & Chr(10) & "Cette fenêtre se fermera automatiquement dans 2 secondes...", 2, "Information de Fin de traitement") End Sub
Au niveau des messages de fin de traitement...
Cdlt
-