Userform

Résolu
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -  
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je voudrais retirer les donnés d'un userform pour remplir ma feuille clients j'ai modifié l'userform d'un autre classeur mais comment faire pour remplir ma feuille clients celui ci ne fonctionne pas ? et faire marcher les boutons enregistrer et supprimer
https://www.cjoint.com/?BIkv4rJs257
merci
a bientot

38 réponses

surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
je l'ai géré comme ça car je ne suis pas fort en userform quant a refaire les 3 feuilles c'est hard je pense
quant aux macros ce sont celles a coté des noms dans la feuille gestions_ouvriers qui efface la ligne dans cette feuille sauf contenat des formules et qui va effacer les entrées correspondant dans la feuille congés en cas de changement d'employé.
Dans la feuille congés une macro par ouvrier qui effacera les entrés de l'année en cours donc au total ce sont donc 72 macros que je dois modifier si je change quelque chose dans les tableaux congés.
Par contre pour imprimer la feuille individuelle des tableaux congés c'est la meme macro pour les 36 ouvriers ce qui est vite géré si on change quelque chose
a bientot
0

 
Bonjour,
C'est OK, je vais vous préparer les macros, pour lundi.
0

 
Bonjour,
Petite question concernant:
Dans la feuille congés une macro par ouvrier qui effacera les entrés de l'année en cours donc au total ce sont donc 72 macros que je dois modifier si je change quelque chose dans les tableaux congés.
Je pense que vous effacez d'un coup toutes les données et non pas cas par cas ... c'est-à-dire une seule commande pour le tout ... Oui / Non ?

0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
non 2 commandes par ouvrier une qui effacera les entrés des absences de l'année en cours jusqu'au 31 mai et une autre effacera les données ouvrier + les entrés d'absence dans la feuille congés
donc je pense qu'il faudrait faire 2 macros une dans la feuille congés et l'autre dans la feuille gestion_ouv c'est comme ça actuellement 36 macros par feuille
slts
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question

 
Bonjour,
Ce n'est pas clair.
Point 1.-
Effacer un ouvrier (comme commande [efface] sur feuille [gestion_ouvriers]) plus la liste des congés qui lui corresponde dans le tableau de la feuille [conges].
Point 2.-
Pourquoi mettre un bouton [Reinitialiser] sur chaque tableau de la feuille [conges] alors que visiblement en début d'année vous effacer certainement la liste de l'année passée !
Pourquoi qui effacera les entrés des absences de l'année en cours jusqu'au 31 mai.... ?
Dans votre code il n'est pas tenu compte d'une date !

0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
exact ça ne tient pas compte de date j'ai pris 31 mai pour l'exemple date de fin d acquisitions de congés.
si on efface un ouvrier pour le remplacer par un autre on effacera ses données perso dans gestions ouvriers + ses données en feuille congés.
Si on change d'année ou si les lignes sont pleines en feuille congés on effacera ses dates mais pas les données perso puisque l'ouvrier ne change pas dans ce cas on exécutera la macro perso de la feuille congés
Faites un essai cela n effacera pas les mêmes données bien sur pour cette raison on a 36 macros en feuille gestion et 36 en feuille congés enfin 37 en feuille congés car imprim est la même macro pour les 36 boutons.
C'est sur ce modèle qu'il faudrait s'inspirer car ça imprime a partir de la position du bouton
car si le bouton est déplacé la macro va coincer elle a une position défini au depart
slts
0

 
Bonjour,
Le classeur avec le premier point régler (effacer un ouvrier) : https://www.cjoint.com/?3IquInUZZR5
Note les macros du module 2 sont neutralisées, les nouvelles dans le module [lepingou]

0

 
Bonjour,
Vous contrôlez si tout est selon vos désirs : https://www.cjoint.com/?3IqwcbjbeKV
Je vous laisse le soin de supprimer les macros [Private Sub CommandButton37_Click()] et suivantes qui ne sont plus valables.


Salutations.
Le Pingou
0

 
Bonjour,
Pour le déplacement dans la feuille vous avez besoin de la liste des noms et c'est tout.
Dans la feuille [Avril], la liste déroulante en [A2] et dans votre macro, vous remplacez la ligne d'instruction :
Application.Goto Cells(7, ([A1] * 2) + 1)
Par le deux suivantes :
ncol = WorksheetFunction.Match(Range("a2"), Rows(4), 0)
Application.Goto Reference:=Range("A1").Offset(0, ncol - 1), Scroll:=True

0
surplus
 
bonjour
ca marche pour l'exemple d'avril
j'ai essayé de l'adapter a la feuille congés et je n'y arrive pas sauf en laissant les 2 cases A1 avec les N° et A2 avec les noms .
est ce grave si je fais 6 macros pour me deplacer dans cette feuille car je veux la repeter 6 fois a 6 endroits differents?
merci
a bientot
0

 
Bonjour,
En principe une seule macro suffit avec une liste déroulante pour chaque mois.
Comment avez-vous modifié la structure de la feuille [conges] ?
Autre question : vous avez une feuille d'accueil alors pourquoi ne pas partir de là avec un choix du mois et nom de l'ouvrier ?

0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
j'ai modifié la macro en rajoutant des liens je vous mets le lien
https://www.cjoint.com/?BIruLqNUkjr
oui théoriquement je devais cacher les feuilles et partir de l'accueil et revenir a l'accueil chaque fois pour ça j avais fait des liens accueil dans toutes les feuilles
mais le collègue préfère le gérer comme ça
quand vous m aviez dit de changer les feuilles pour le gérer avec un userform vous la verriez comment la structure du fichier ou de la feuille?
quand j aurais du temps je m y pencherai pour ameillorer
merci
a bientot
0

 
Bonjour,
Je vous avais préparé une solution depuis la feuille [ACCUEIL] : https://www.cjoint.com/?3IrvU1smLlZ
Je regarderai votre dernier message plus tard.
0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
j'avais pensé a ça en lisant votre denier message c'est cool vous m avez devancé je vais mettre ces mises a jour dans le fichier original
a bientot
0

 
Bonjour,
Découvrez cette version : https://www.cjoint.com/?3IrxcgEVmGn
0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
génial ce coup je garde
je viens de finir les transformations mais en fait je m'aperçois que ça a crée un décalage dans les feuilles du mois et au lieu d'avoir des lettres C,/C,C/ et autres j'ai des chiffres comme les calculs se font avec les colonnes de la page congés je vais refaire mes formules comme y a un petit bug je vais essayer d'y remédier en même temps
a bientôt
0

 
Bonjour,
Eh oui, je l'avais mentionné dans le message 27 : https://forums.commentcamarche.net/forum/affich-26047848-userform#27
Petit conseil pour la prochaine édition.
Dans tous les tableaux utiliser toujours la même référence par exemple vous avez (NomPrénom) qui devrait être la base dans [gestion_ouvriers] et être la référence pour les autres tableaux (ce qui n'est pas le cas dans la version en cours).
La relation des données entre 2 tableaux se fera avec la fonction RECHERCHEV ou ...H, de ce fait la référence identique ; ce qui facilitera le tri.

0
surplus
 
bonjour
c'est pas grave ce sera vite resolu les decalages
Mais j ai fait ça pour compiler nom et prenom c'est pour ça que j'ai crée ce ptit probleme de reference je voyais pas comment faire autrement.
je vais suivre vos conseils et essayer une autre gestion des 3 feuilles plus tard
merci
a bientot
0

 
Bonjour,
Juste au passage, j'avais oublié que le fichier à des plages nommées (ce qui est super) par contre le gros problème est dans la partie congé du tableau [gestion_ouvrier] ou vous avez des liens directs et non par référencés.

0

 
Bonjour,
Désolé pour le dérangement.
J'ai modifié le code dans [Private Sub Worksheet_Change(ByVal Target As Range)] et changer l'événement de la procédure [Private Sub ComboBox1_Change()] en [Sub ComboBox1_DropButtonClick()].
Le classeur avec modification : https://www.cjoint.com/?3ItjMhqxMIg

0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
merci ça marche bien mieux
vous avez une idée pour l autre question que j ai posté ?
je voudrais faire la difference entre 2 dates dans un userform j y ai passé la nuit mais j ai pas avancé
a bientôt
0

 
Bonjour,
J'ai l'impression que le tableau des jours fériés feuille [ACCUEIL] est partiellement faux (exemple : Pâques 2012 c'est le 8.4.2012 et non pas 31.03.2012) !
Concernant votre question : différence entre 2 dates, vous avez la réponse de gbinforme !


Salutations.
Le Pingou
0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
oui peut être j'avais trouvé cette formule mais je l avais pas vraiment controlé dans le temps
je vous fais parvenir le fichier pour meilleure compréhension
https://www.cjoint.com/?BItmdLrqh0i
Dans la feuille An j'ai fait un bouton avec un userform pour rentrer le nom prénom et le reste
dedans vous verrez on doit calculer le nombre de jours qu'il garde la voiture ça doit s'afficher en bas et donc dans la feuille clients le tout
Pour le moment on rentre le nom du client et on recopie pour mettre en rouge et je suis entrain de voir si amélioration avec l'userform et garder des traces du pret si jamais ils ont des pv
donc je pense qu'il me faudra en faire un autre d'userform
pour lire les etats par date ou client .
mais pour le moment j essai deja de finir le 1er
slts
a bientôt
0

 
Bonjour,
Je vais regarder plus tard un brin sur occupé.
Vous avez pensé à remercier gbinforme pour son aide toujours aussi précieuse !

0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
oui bien sur que j'y pense le problème c'est que çà marche pas et depuis cette nuit je me casse la tête avec excel comme j'ai changé les noms des combox ça marche pas je remue dans tous les sens mais rien encore
a bientot
0

 
Bonjour,
Je vous avais proposé une autre solution pour les absences / congés.
La voici : https://www.cjoint.com/?3IBwZ2kxc2z
0
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
 
bonjour
j'ai commencé a le regarder on doit rentrer les absences dans la feuille planning si j ai bien compris
Dans la feuille paramètres divers on doit voir les absences de chacun si je comprends mais si on change de nom rien ne se passe.
Et le plus important dans mon planning on calcule sur une plage de 6 jours les congés du lundi au vendredi 6 jours de congés nous sont décomptés et pour les autres conditions a 5 jours c'est pour cela que dans mon classeur initial il y a une page calculs pour gérer ces décalages et la formule du calcul a 6 jours la semaine j'ai mis un moment a me la procurer.
mais je l'approfondirai il est plus simple je pense que le mien
merci
a bientot
0