VBA insertion dans classeur à feuilles multiples

Isopretty

XLDnaute Nouveau
Tout d'abord bonsoir à tous et à toutes.

Voilà, je me suis lancé dernièrement dans un projet professionnel, malheureusement sur excel 3. Mon programme fonctionne parfaitement pour le moment (macro et sous.total9).
Mais pour des questions pratique, il faut que j'y intègre l'utilisation d'un formulaire. Et là :eek:

J'ai un classeur de 17 feuilles. Chaque feuille correspond à un agent différent.
Sur chaque feuille un tableau de suivi de carrière, identique pour tous.

J'ai besoin de créer un Userform pour saisir les données des agents et que selon le nom de l'agent qui est saisi, les données intègrent sa feuille et uniquement la sienne et en se plaçant tjs sur la dernière lignevide, sachant que j'ai 11 colonnes à remplir (nom, note, horaires, date, remarque, adresse, téléphone...).

Voilà, j'espère avoir été claire et trouver une solution à mon casse tête.

PS : j'ai oublié de préciser, que je suis bien sûr susceptible d'avoir de nouveaux agents à intégrer mes services..:cool:

Merci encore
 

jp14

XLDnaute Barbatruc
Re : VBA insertion dans classeur à feuilles multiples

Bonsoir Isopretty et bienvenue sur le forum

Ci joint un exemple d'Usf

a tester

JP
 

Pièces jointes

  • Classeur2.zip
    16.4 KB · Affichages: 69
  • Classeur2.zip
    16.4 KB · Affichages: 68
  • Classeur2.zip
    16.4 KB · Affichages: 66
Dernière édition:

Isopretty

XLDnaute Nouveau
Re : VBA insertion dans classeur à feuilles multiples

Incroyable, voilà deux jours que je planche et que je m'arrache les cheveux.
Tu as réussi du premier coût !
Merci, je vais me plancher sur ta réponse et voir le détail de tes instructions, mais seulement ce soir quand je rentrerai du boulot.
Merci encore
Je te tiens informé de l'évolution de mon tableau.
 

Isopretty

XLDnaute Nouveau
Re : VBA insertion dans classeur à feuilles multiples

Bonsour JP14,

Je prends le temps d'éplucher tes instructions, et je ne peux que constateur que mon niveau VBA est vraiement faible.
Ton module prend bien en compte la création de nouveaux champs et de nouveaux agents. Mais il me faut changer quelques données dont le format date (jj/mm/aaaa) car je dois pouvoir ensuite effectuer un tri par année donc deux colonnes de saisie (jj/mm + aaaa). Il me faut également insérer 3 cellules horaires (début-fin et durée). Il faut également que j'intègre une numLigneVide afin que les données ne soient pas écrasées.
Ci-joint une modif et un exemple de l'Userform dont j'ai besoin.
Merci encore
 

Pièces jointes

  • BARBATRUCCopie de Classeur2.zip
    19.9 KB · Affichages: 36
  • BARBATRUCCopie de Classeur2.zip
    19.9 KB · Affichages: 42
  • BARBATRUCCopie de Classeur2.zip
    19.9 KB · Affichages: 36

jp14

XLDnaute Barbatruc
Re : VBA insertion dans classeur à feuilles multiples

Bonjour

Ci joint le fichier modifiée.
Le numéro associé aux contrôles (textbox, Combobox, ...) correspond aux numéros des colonnes. Si on désire modifier la disposition il suffit de changer les numéros des contrôles.

Concernant les heures de départ et de fin et de durée il faut y ajouter la date si on désire utiliser les formules d'excel, cela simplifie les calculs.

J'ai ajouté des codes pour contrôler la saisie, à modifier en fonction de l'utilisation.

Concernant la saisie du descriptif, le textbox est multi-lignes, le code met automatiquement des majuscules en début de phrase.

J'ai rajouté un textbox non visible pour mettre automatiquement l'année.


A tester et à modifier.

JP
 

Pièces jointes

  • BARBATRUCCopie de Classeur2.zip
    23.1 KB · Affichages: 54
  • BARBATRUCCopie de Classeur2.zip
    23.1 KB · Affichages: 49
  • BARBATRUCCopie de Classeur2.zip
    23.1 KB · Affichages: 42
Dernière édition:

dominique35

XLDnaute Occasionnel
Re : VBA insertion dans classeur à feuilles multiples

bonjour jp14, isopretty, et le forum

Jp14 quand j'ouvre le fichier joint, et que je clic sur le bouton1 de la feuil1 (garde) j'ai une message d'erreur de compilation, projet ou bibliothèque introuvable qui me renvoie en vb:

Private Sub UserForm_Initialize()
Dim i1 As Byte
Dim j As Byte
Application.EnableEvents = False
flag = True ' pour éviter les controles
Dim Sh As Worksheet
For Each Sh In Worksheets
If Sh.Name = "garde" Then
Else
Me.ComboBox1.AddItem Sh.Name
End If
Next Sh
Me.DTPicker3.Value = Format(Now, "dd/mm/yyyy")
TextBox4 = Year(DTPicker3.Value)
Application.EnableEvents = True
End Sub

Quand je supprime le _ entre "UserForm_Initialize" j'ai bien accès au champ de userform7 mais impossible de valider le nom ou de le saisir manuellement dans la combobox1

Peux-tu m'expliquer la raison. Merci encore pour tes superbes réalisations.
Dominique
 

jp14

XLDnaute Barbatruc
Re : VBA insertion dans classeur à feuilles multiples

Bonjour

bonjour jp14, isopretty, et le forum

Jp14 quand j'ouvre le fichier joint, et que je clic sur le bouton1 de la feuil1 (garde) j'ai une message d'erreur de compilation, projet ou bibliothèque introuvable qui me renvoie en vb:
Me.DTPicker3.Value = Format(Now, "dd/mm/yyyy")

Quand je supprime le _ entre "UserForm_Initialize" j'ai bien accès au champ de userform7 mais impossible de valider le nom ou de le saisir manuellement dans la combobox1

Peux-tu m'expliquer la raison. Merci encore pour tes superbes réalisations.
Dominique

Concernant l'erreur c'est un problème récurrent, il faut vérifier si les références sont cochées ( menu outils )
https://www.excel-downloads.com/threads/formulaire-excel.114676/

Le style de la combobox7 est fmStyleDropDownList ou 2 ( extrait de l'aide VBA Le contrôle ComboBox se comporte comme une zone de liste. L'utilisateur doit choisir une valeur dans la liste. )
Ceci pour éviter de mettre une valeur qui ne correspond pas à un onglet.

Bonne journée

JP
 

Discussions similaires

Réponses
14
Affichages
268

Membres actuellement en ligne

Statistiques des forums

Discussions
314 162
Messages
2 106 603
Membres
109 637
dernier inscrit
lafforest