XL 2016 Sélectionner une feuille parmi plusieurs pour en afficher les données dans un formulaire.

DJISA

XLDnaute Occasionnel
Bonjour! Je reviens avec le même problème mais en joignant cette fois ci un fichier pour plus de concret.
Pour ceux qui n'ont pas lu la discussion, je ferez un rappel
VbaProject(Gestion des notes): Feuil1(3èmeA); Feuil2(3èmeB); Feuil3(4èmeA); Feuil4(4èmeB); Feuil5(5èmeA); Feuil6(5èmeB); Feuil7(6èmeA); Feuil8(6èmeB)
Mon souhait est de pouvoir afficher les prénom, nom...et les notes d'un élève quelconque dans un formulaire en sélectionnant d'abord sa classe via un combox et puis en tapant son code dans un textbox (Une recherche en deux étapes).
Je voudrais aussi pouvoir, à partir du formulaire, modifier, supprimer des données.
Je crois que vous pourrez voir le formulaire associé en passant par l'onglet développeur.
Merci d'avance.
 

Pièces jointes

  • Gestion des notes.xlsm
    971 KB · Affichages: 60

DJISA

XLDnaute Occasionnel
Salut, Robert

J'ai ajouté les autres onglets sans aucun problème. Je n'ai constaté aucun beug pour l'instant. Cela témoigne de l'excellent travail que tu as réalisé.
Je t'épargne la boulot sur la protection des formules. Tu as déjà beaucoup travaillé sur ce projet. Je sais comment les protéger.
Reçois toute ma gratitude.
DJISA
 

Robert

XLDnaute Barbatruc
Repose en paix
Re,

Envoie quand même le fichier car il reste la partie impression à faire (je reprends le boulot lundi et là je pourrais tester)...
Gratitude reçue en pleine poire. Comme ça fait du bien... Mais je t'assure que ça a été un réel plaisir de travaillé sur ton projet.
 

DJISA

XLDnaute Occasionnel
Comme tu le constateras. Je n'ai pas eu le temps de protéger les formules.
Tu peux corriger aussi le beug. Il se situe au niveau de commandButton1 (Valider). C'est ce que j'ai mis en gras en bas. Le beug surviens quand je veux filtrer l'age au niveau du Filtres (Partie Filtre personnalisé)
Private Sub CommandButton1_Click() 'bouton "valider"
Case 12
'cas Retenues
If TV(I, COL1) <> "" Then 'condition 8 : si la données ligne I colonne COL1 du tableau des valeurs TV n'est pas vide
'convertie la partie numérique en entier
VD = CInt(Left(TV(I, COL1), Len(TV(I, COL1)) - 1)): VT = CInt(Left(Me.TextBox2.Value, Len(Me.TextBox2.Value) - 1))
'définit le paramètre en majuscules
TD = UCase(Right(TV(I, COL1), 1)) & "R": TT = UCase(Right(Me.TextBox2.Value, 1)) & "R"
End If 'fin de la condition 8
Case Else 'tous les autres cas
VD = CDbl(TV(I, COL1)): VT = CDbl(Me.TextBox2.Value) 'transforme les valeur en Double
TD = "": TT = "" 'pas de paramètre
Pour la partie impression, le bulletin à imprimer devra comporter une entête faisant référence à la tutelle située en haut à gauche et l'année scolaire en haut et à droite. On ajoutera aussi une 4ème colonne intitulé Points (total des points obtenus par matière qui se calcul ainsi MS * coef de la matière)
Le code n'y figurera pas également. Ci dessous entête et colonnes (8 colonnes) du bulletin:
Pour les résultats le format dépend de toi.
Pour les options, je voudrais pouvoir 1/imprimer tous les bulletins (deux bulletins par page), 2/ Imprimer le bulletin sélectionné,
3/ Aperçu avant imprssion etc.

IA DE THIES Année scolaire 2019-2020
IEF THIES DEPARTEMENT
CEM DE MBOUSNAKH


BULLETIN SEMESTRIEL

Prénom...................................................................................................... Nom..............................................................
Date de naissance............................................................................... Lieu de naissance..................................
Sexe............. Classe reprise............................................

Classe.................................. Nombre d'élève.....................................

Matières MD Comp MS Coef PTS Rang Appréciations

.............. .......... .......... ........ ......... ........ ......... ................................

Ce fut une très longue discussion


DJISA
 

ChTi160

XLDnaute Barbatruc
Bonjour DJISA
Bonjour Robert , le Forum
Pour ce qui est de l'erreur (il aurait fallut mettre le texte du message d'erreur)
peut être le traitement dans VD = CDbl(TV(I, COL1)): VT = CDbl(Me.TextBox2.Value) d'une donnée non Numérique !
à voir !
Bonne journée
jean marie
 

Robert

XLDnaute Barbatruc
Repose en paix
Djisa,

Quand Bug. Il me faut la procédure complète que tu as utilisée. Tu me dis que tu as voulus filtrer l'âge au niveau du filtre personnalisé. Il me faut tous les arguments du filtre : une classe ou toutes les classe / Période / Section / Colonne / Critère du filtre / la valeur. Ensuite il me faut le message d'erreur et la ligne qui plante. L'âge est déterminé par formule liée à la date de naissance donc si problème d'âge non numérique cela signifie que le problème vient de la date de naissance...

Pour ma part quand je filtre l'âge je n'ai pas de bug... Maintenant il est vrai que si dans l'onglet au niveau de l'âge il y a une donnée non numérique, ce qui ne serait pas logique et comme le dit Jean-Marie, ça va planter. Je vais remédier à ça mais il est vrai que je n'ai pas envisager de genre de cas ou les données seraient erronées...

Pour ce qui concerne l'impression. je ne pourrais pas gérer l'impression de deux bulletins par page si j'imprime directement le formulaire. Il faudra donc préparer un onglet ou seront renvoyés les données du formulaire (du coup deux onglets car le semestre 1 n'a pas les mêmes données que le semestre 2). Même comme ça je ne suis pas sûr qu'on puisse en mettre deux par page mais on moins on gèrera mieux...
 

DJISA

XLDnaute Occasionnel
Salut Robert
Depuis ce matin j'essaie de t'envoyer le fichier via le site proposé en utilisant un compte outlook. Mais la configuration du compte ne passe pas. Si je peux avoir ton adresse mail ce sera plus facile pour moi de te l'envoyer
DJISA
 

Robert

XLDnaute Barbatruc
Repose en paix
Re,

Merci de l'info l'Agrafe, mais un fichier excel zippé ne perd que très peu de poids (comme moi d'ailleurs... C"est pourquoi je ne me zippe plus.). Même zippé on était tout orange (ou out of range, l'anglais et moi ça fait deux) quand même... Sinon il faut, je crois, payer sa cotisation au créteur du site...
 

Statistiques des forums

Discussions
311 707
Messages
2 081 734
Membres
101 809
dernier inscrit
HADER2024