Générer emploi du temps vierge grâce au macro sur Excel 2013
Résolu
GregBaron
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
GregBaron Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
GregBaron Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaiterais générer automatiquement un emploi du temps mensuel vierge pour mes collaborateurs.
Je sais qu'il est possible de générer une nouvelle feuille de calcul grâce aux macros, je ne sais malheureusement absolument pas comment cela fonctionne.
Je connais bien Excel dans le cas d'une utilisation basique, mais connaissance sont donc limitées en ce qui concerne la programmation.
Je cherche a réaliser une macro avec les caractéristiques suivant :
-- une zone de texte libre dans lequel je mentionne le nom du collaborateur (ex Jean Dupont)
-- une zone de texte libre dans lequel je mentionne le mois et l'année souhaitée (ex janvier 2014)
-- un bouton « horaires » qui génère la feuille de calcul avec un nom spécifique (ex Janv14 Jean.D)
Je souhaiterais que cette feuille de calcul comprenne les jours de la semaine et la date correspondante (pour janvier 2014 -- de mercredi à vendredi -- colonne A ; -- de 01/01/14 à 31/01/14 -- colonne B)
Merci d'avance pour votre aide.
Cordialement.
Je souhaiterais générer automatiquement un emploi du temps mensuel vierge pour mes collaborateurs.
Je sais qu'il est possible de générer une nouvelle feuille de calcul grâce aux macros, je ne sais malheureusement absolument pas comment cela fonctionne.
Je connais bien Excel dans le cas d'une utilisation basique, mais connaissance sont donc limitées en ce qui concerne la programmation.
Je cherche a réaliser une macro avec les caractéristiques suivant :
-- une zone de texte libre dans lequel je mentionne le nom du collaborateur (ex Jean Dupont)
-- une zone de texte libre dans lequel je mentionne le mois et l'année souhaitée (ex janvier 2014)
-- un bouton « horaires » qui génère la feuille de calcul avec un nom spécifique (ex Janv14 Jean.D)
Je souhaiterais que cette feuille de calcul comprenne les jours de la semaine et la date correspondante (pour janvier 2014 -- de mercredi à vendredi -- colonne A ; -- de 01/01/14 à 31/01/14 -- colonne B)
Merci d'avance pour votre aide.
Cordialement.
A voir également:
- Emploi du temps de la semaine vierge
- Comment supprimer une page vierge sur word - Guide
- Mode d'emploi - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Combien de temps reste une story sur facebook - Guide
- Chromecast mode d'emploi - Guide
4 réponses
bonjour
macro proposée
macro proposée
Option ExplicitSi tu ne sais pas l'installer, fais signe :o)
Sub emploi()
Dim jour As Date, separe(), onglet As String
With Sheets(1)
jour = .Range("B2")
separe = Split(.Range("A2"))
onglet = Format(jour, "mmmyy") & " " & separe(0) & "." & Mid(separe(1), 1, 1)
End With
Sheets.Add After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = onglet
.Range("A1") = Format(jour, "dddd dd/mm/yyyy")
jour = Application.EoMonth(jour, 0)
.Range("B1") = Format(jour, "dddd dd/mm/yyyy")
End With
End Sub
Bonjour
Ci joint maquette avec modif "13 " et petites améliorations
https://www.cjoint.com/?3AeiiUaR2y1
Ci joint maquette avec modif "13 " et petites améliorations
https://www.cjoint.com/?3AeiiUaR2y1
Bonjour Michel,
Merci s'est bien dans l'idée de ce que je cherche à obtenir.
Néanmoins je me suis peut-être mal expliqué :
Dans la page générée, je souhaiterais faire apparaître toutes les dates du mois (de mercredi un JUSQU'À vendredi 31) en colonne A (j'ai mentionné 2 colonnes, car je ne parvenais pas à inscrire le jour et la date dans la même cellule, ça sera plus lisible avec une seule colonne).
J'imagine que la modification doit s'effectuer sur cette partie :
With ActiveSheet
.Name = onglet
.Range("A1") = Format(jour, "dddd dd/mm/yyyy")
jour = Application.EoMonth(jour, 0)
.Range("B1") = Format(jour, "dddd dd/mm/yyyy")
With Range("A1:B1")
.Columns.AutoFit
.Borders.Weight = xlThin
faut-il que je remplace
.Range("B1") = ...
par .Range("A2") ... jusqu'a .Range("A31")
ou existe-il une procédure automatique du genre
.Range("A1-A31")
Merci de votre aide,
Cordialement
Merci s'est bien dans l'idée de ce que je cherche à obtenir.
Néanmoins je me suis peut-être mal expliqué :
Dans la page générée, je souhaiterais faire apparaître toutes les dates du mois (de mercredi un JUSQU'À vendredi 31) en colonne A (j'ai mentionné 2 colonnes, car je ne parvenais pas à inscrire le jour et la date dans la même cellule, ça sera plus lisible avec une seule colonne).
J'imagine que la modification doit s'effectuer sur cette partie :
With ActiveSheet
.Name = onglet
.Range("A1") = Format(jour, "dddd dd/mm/yyyy")
jour = Application.EoMonth(jour, 0)
.Range("B1") = Format(jour, "dddd dd/mm/yyyy")
With Range("A1:B1")
.Columns.AutoFit
.Borders.Weight = xlThin
faut-il que je remplace
.Range("B1") = ...
par .Range("A2") ... jusqu'a .Range("A31")
ou existe-il une procédure automatique du genre
.Range("A1-A31")
Merci de votre aide,
Cordialement
Merci encore pour votre soutient,
J'ai effectivement un souci :
Quand j'exécute la macro (encore dans la fenêtre de code), un message d'erreur apparaît me signalant une erreur d'exécution '13' : incompatibilité de type.
Puis-je simplement copier-coller votre code ou ai-je une manipulation préalable à réaliser?