Enregistrement données formulaire en fonction du mois

Bonjour à tous,

Je vous contacte car je me retrouve bloqué dans mon projet Excel. Je suis en train de réaliser un formulaire de saisi (sans UserForm) et mon pb est le suivant:

Je souhaite écrire sur une feuille en fonction d'une variable, je m'explique.

Dans ma feuille 1 j'ai plusieurs listes avec nom, salles de sport, mois et le nb d'heures réalisés. Sachant que j'ai une feuille pour chaque mois, est ce qu'il est possible d’enregistrer les données mentionnées ci dessus dans la feuille correspondant au mois indiqué?

Les données sont visibles feuille 1 pour le menu déroulant mais à terme elles seront écrites en blanc pour les faire disparaitre.

21test.xlsx (17.14 Ko)

Le but serait d'enregistrer le nom d'heure de sport faites afin de suivre l'évolution. Je ne sais absolument pas si c'est possible

Bonjour,

Je travaille sur votre demande. A la vue de votre fichier j'ai plusieurs remarques :

- Evitez les cellules fusionnées. Sur votre feuille 1, cela n'apporte rien. Il suffit d'élargir la colonne concernée
- Evitez de mettre une couleur blanche sur toute votre feuil1. Sélectionnez toutes les cellules puis dans couleur, choisissez "aucune rempliassage". Ensuite si vous ne voulez pas voir le quadrillage, décochez la case quadrillage pour le faire disparaitre.
- On peut faire une feuille séparée avec vos données de référence placées en ligne 32 et plus bas
- Les tableaux dans chaque feuille peuvent démarrer en A1

Avant tout est-ce votre bon fichier que vous avez posté ?

Dans l'attente de vous lire pour continuer

Bonjour,

Dans un premier temps merci pour votre réponse. Pour répondre à vos remarques:

En regardant sur plusieurs forum, j'ai cru comprendre que les cellules fusionnées posaient des pb..
Oui c'est vrai que les données peuvent être déplacée ailleurs, j'avais pris l'exemple de quelqu'un qui avait fait comme ici à mettre les données en blanc pour utiliser la liste mais c'est vrai que sur une feuille ça pourrait être plus adaptés.
C'est vrai, j'ai simplement mis au milieu car je trouve ça personnellement plus esthétique rien de plus aha

Oui c'est le bon, je m'entraine afin de pouvoir reproduire ce moyen d'enregistrement. J'ajouterai probablement plus tard des graphiques afin de montrer l'évolution des performances au fil des mois.

Merci encore pour votre retour.
Yann

Ok. Merci du retour

Dans les feuilles mois, les chiffres 1, 2, 3, 4 correspondent à quoi. Aux semaines je suppose

Oui c'est bien ça.

De même, les mois présent dans la première feuille vont jusqu'à décembre mais je n'ai pas reporté cela dans toutes les feuilles, je pourrais le faire de mon côté une fois que j'aurais compris le principe

Ok. Vous n'avez pas pensé à faire une seule feuille pour les mois ?.

L'idée serait une colonne pour le mois et une colonne par semaine. Cela vous donnerait au final une base de données et me semblerait plus facile si vous voulez faire un ou des graphiques

Pour la colonne Heures sports, vous mettez l'heure de début ou simplement le nombre d'heures de sport effectuées ?

Alors j'y ai pensé mais j'aurais préféré traiter les infos mois par mois. J'avais vu un code de ce type pour une feuille commune

Sub test()

  Dim ListObj As ListObject, Sh As Worksheet, sh2 As Worksheet, j As Long

Set Sh = Sheets("Mois")
 Set sh2 = Sheets("Feuil1")
    Set ListObj = Sh.ListObjects("Tableau")
      j = Sh.Cells(Rows.Count, 2).End(xlUp).Row

  With ListObj
   Sh.Cells(j, 2) = sh2.Range("E7")
   Sh.Cells(j, 3) = sh2.Range("E9")
   Sh.Cells(j, 4) = sh2.Range("E11")
   Sh.Cells(j, 5) = sh2.Range("E13")
   Sh.Cells(j, 6) = sh2.Range("E15")

  End With
   ListObj.ListRows.Add

   MsgBox "Données enregistrées"

   With sh2
    .Range("E7:E15") = ""

   End With
End Sub

Mais lors d'une fragmentation en plusieurs mois la je n'arrive pas à imaginer comment je peux enregistrer en fonction de la case E11 qui represente le mois correspondant et donc enregistrer l'infomation à cet endroit.

La avec ce code j'enregistre simplement à la ligne en dessous sans prendre en compte la variable du mois et même de la semaine

Ok. Le mieux est de repartir à 0 car souvent un modèle de code est complètement chamboulé pour faire face à ce que l'on veut au final. Je vais voir dans ce sens

Quid de ma question au sujet de l'heure de sport ?

Aussi êtes vous sûr que le nom louis ne doit pas être en ligne 4 ?

Oui de ce que j'ai pu apprendre d'Excel c'est ce qui semble être le mieux mais avec mon niveau ça se résume souvent à du bidouillage, j'essaie de comprendre au fur et à mesure les différentes fonctions.

Alors en Effet Louis doit commencer lignes 4 je me suis tromper désolé
Le nombre total est plus simple qu'une heure de début et de fin pour mon côté je verrais plus tard pour m'améliorer à faire une version heure de début et heure de fin

Avant que je n'aille plus loin, dites moi si vous êtes d'accord avec la structure de ce fichier

12testv1.xlsm (24.20 Ko)

Je rajouterai le mois en ligne 1

Oui la structure est parfaite c'est super!

Au fait, la liste de tous les noms doit toujours être dans la colonne pour chaque mois ou vous l'ajoutez suivant chaque enregistrement. en gros cela voudrait dire, soit on a toujours tous les noms ou uniquement les noms de ceux qui ont fait uniquement du sport (exemple : Louis est mentionné en avril mais pas en mai car il n'a pas fait de sport)

Si possible, je préférerai toujours voir les prénoms, même si rien est ajouté dans le mois

Si possible, je préférerai toujours voir les prénoms, même si rien est ajouté dans le mois

Ok mais ce sera plus difficile lorsque vous allez ajouter des noms. Il faudra aller les ajouter dans tous les mois

Au fait, la salle vous la mettez où dans le fichier ?

Edit : pas de mois de janvier, février et mars ?

Normalement les noms seront fixes, si cela change j'apprendrais une nouvelle façon de faire

Ah c'est vrai que j'ai oublié ça, normalement entre le nom et le sport mais comme je l'ai oublié ça peut être rajouté en dernière colonne pour éviter de modifier tout le code.

Non je ne mets pas ces mois la car ils sont passé et j'avais eu l'idée de faire ça fin Avril donc j'avais pris Avril comme premier mois

Ok pour les noms. Pour les mois j'ai tout de même rajouté les feuilles de ces mois

Pour la salle pas de souci, je la rajoute en colonne C

Je reviens plus tard quand terminé

Un grand merci pour votre temps et votre aide.
Si vous avez la possibilité d'ajouter des commentaires pour que je puisse comprendre le cheminement ce serait super après je ne veux voudrais pas abuser de votre gentillesse

Votre fichier en retour pour que vous testiez.

Deux points :
- Il est supposé que la personne est toujours dans la même salle dans le mois concerné. Si par exemple il passe d'une salle à l'autre, l'info dans la colonne C est correspondra toujours au dernier enregistrement.
Solution si vous voulez connaitre la salle chaque semaine (plus pratique je pense), on pourrait supprimer la colonne C et mentionner la nom de la salle dans la colonne de la semaine concernée

- Seul le mois d'avril est fonctionnel pour l'instant car si souci cela évitera de devoir revoir modifier pour chaque feuille

11testv1.xlsm (43.37 Ko)

Dans l'attente de votre retour

Le fichier est super !

Oui c'est vrai que ça serait peut être plus simple à voir de mettre la salle directement dans la semaine.

Merci beaucoup pour l'aide dans tous les cas

Oui c'est vrai que ça serait peut être plus simple à voir de mettre la salle directement dans la semaine.

Le fichier amendé. A noter qu'après l'enregistrement, les cellules sont vidées des données via le code Reset.

Pour l'ajout d'une salle ou d'un nouveau nom dans la feuille Liste, il vous suffit d'entrer le nom dans la cellule en dessous du dernier nom. Donc pas besoin de formater quoi que ce soit. Comme on utilise les tableaux structurés, le tableau prendra directement les données en compte et les listes de validation en feuille saisie prendront directement la nouvelle données. Pour comprendre, vous pouvez juste entrer entrant un nouveau nom en cellule C6 de la feuille Liste. Vous constaterez que le tableau est adapté automatiquement.
On pourrait même faire en sorte que le nom soit ajouté directement dans toutes les feuilles. Mé bon, là cela demande un nouveau code à ajouter.

35testv2.xlsm (58.07 Ko)
Rechercher des sujets similaires à "enregistrement donnees formulaire fonction mois"