dans un premier temps j'avais (nous) établit un classeur permettant de remplir la feuille "A signer" depuis la feuille "W.P." et tout était ok. Mais (il y a toujours un mais), une partie du personnel est passée sous une méthode de saisie correspondant à "Calend W.P.", alors les autres m'ont demandé si je pouvais leur bricoler qq chose qui y ressemble.
Après mes essais, plutôt infructueux je suis arriver à ça (voir classeur). Je me contente de de faire défiler F8 en VBA et j'obtiens le résultat que on voit à l'écran!!!
Ce que j'essai de faire:
je clique sur la 1ere case des congés le résultat s'inscrit dans "Range("AD65536").End(xlUp).Offset(1, 0).Select",
je clique sur le dernier jour des congés le résultat s'inscrit dans "Range("AE65536").End(xlUp).Offset(1, 0).Select".
La période, sur le calendrier, doit se colorer en fonction du type d'absence choisie (CP, Ml, D/2)
Voilà, merci d'avance pour votre aide que je sais très efficace.
Re : Inscrre une date depuis un calendrier dans un tableau.
Bonjour,
Peux-tu préciser comment fonctionne la feuille WP par rapport à la feuille Calendrier WP? quelles interactions
Pour colorier la feuille calendrier, comment sait-on s'il a choisi CP Maladie ou D/2
Précise comment tu veux que fonctionne la feuille Calendrier WP : que fait l'individu? A la suite de cela, que doit faire le programme?
Re : Inscrre une date depuis un calendrier dans un tableau.
Bonsoir, merci pour vos réponses.
Ce que je cherche à faire!
La première partie est donnée par Yaloo sauf que je n'arrive pas à colorer ou mettre une marque (c, ml, d/2) dans les cases des journées déjà prises, en suite la deuxième partie se fait comme elle se faisait précédemment à partir de la feuille "W.P." sauf que je déplace le tableau en "Calend W.P.!$AD$10;$AI$41". en-suite je suprime la feuille "W.P."
Il faudrait donc rajouter un choix de couleurs (le plus lisible) pour la période bornée par les dates de début et de fin de congés.
Je continue a essayer de faire avancer le sch.....ick et je vous tiens au courant si il y aune lueur qui sen fait entre mes pauvres neurones.
J'ai modifié le classeur en enlevant la feuille "W.P." et en adaptant à la feuille calend W.P. Tout fonctionne sauf jours demandés et pourtant j'ai remplacé select par value mais bon.....
Bonsoir
Re : Inscrre une date depuis un calendrier dans un tableau.
Bonjour,
merci pour ce que tu m'as envoyé, par contre il y a un ptit problème: la date de l'ordi est modifiée en fonction de la dernière ligne de la saisie de dates fin de congés. Je suppose qua ça vient de là "Date = Cells(i, 2) & "/" & Cells(42, c) & "/" & Year(Now)". De pus dans mon idée il serait mieux ou plus logique d'inscrire la date de début de congés à partir de "j = [AD65536].End(xlUp).Row" En plus est ce que tu pourrais m'expliquer
'NOM
.[B3] = [AE3]
With Sheets("A signer")
'Dernière ligne de la colonne AD
j = [AD65536].End(xlUp).Row
babs = Range("AH" & j)
'NOM
.[B3] = [AE3]
.....
'Jours demandés
.[C23] = Range("AF" & j).Value
Il faut prendre depuis le With Sheets("A signer"), cette ligne signifie avec la feuille A signer, donc à chaque fois que tu utilises une cellule et que tu mets un . devant, la cellule indiquée fera partie de la feuille A signer.
Pour utiliser une cellule, il y a plusieurs façons de l'écrire, mais la plus courte et pour moi la plus lisible est de la mettre entre crochets. Lorsqu'il s'agit d'une cellule "fixe" et non variable.
Pour la cellule variable, dans notre cas, la ligne change pour les colonnes AD, AE, AF, et AG, plusieurs possibilités (pour AD par exemple) : j = [AD65536].End(xlUp).Row permet d'obtenir le dernière ligne pleine de la colonne AD Range("AD" & j) Cells(j, "AD") Cells(j, 30) où 30 est la trentième colonne de la feuille.
.Value est important lorsque le contenu de la cellule est une formule.
VB:
With Sheets("A signer")
.[B3] = [AE3]
End With
Lorsque l'on écrit .[B3] = [AE3] cela va copier la valeur de la cellule AE3 de la feuille active (puisqu'il n'y a pas de . ) dans la cellule B3 de la feuille "A signer" (puisqu'il y a un . )
je voulais inscrire dans le titre de la feuille la dernière ligne de la colonne "Date début de congés" ce qui dans mon idée s'écrit comme ça: [AD65536].End(xlUp).Row.
J'ai effectué différentes manipulations par f8 et j'en ai conclut que Date dans "Format(Date, "dd-mm-yyyy")" renvoie la date du jour et non pas la date inscrite dans la dernière case de la colonne AD quelque soit le format qu'on lui donne.
J'ai effectué différentes manipulations par f8 et j'en ai conclut que Date dans "Format(Date, "dd-mm-yyyy")" renvoie la date du jour et non pas la date inscrite dans la dernière case de la colonne AD quelque soit le format qu'on lui donne.
Oui, comme je le dis plus haut, Date est une fonction de VBE, donnant la date du jour, mais il suffit de mettre un autre nom de variable comme Dat, si tu mets :
Dat = Format([AD65536].End(xlUp), "dd-mm-yyyy")