> Tous les forums > Forum Bureautique
 Macro pour un tableau de scolaritéSujet résolu
Ajouter un message à la discussion
Pages : [1] 2 ... Fin
Page 1 sur 2 [Fin]
noe2008
  Posté le 22/05/2016 @ 22:11 
Aller en bas de la page 
Petit astucien

Salut les amis

je travaille sur une macro dans le tableau de scolarité de l’année prochaine

Je souhaite créer une macro afin de préparer le tableau de scolarité de l’année prochaine pour cela dans le tableau de scolarité de l’année actuelle je saisi dans les cellules des résultats de fin d’année :

A : pour les admis

R : pour les non admis

Le but de cette macro est de réorganiser les élèves de chaque niveau scolaire pour l’année prochaine

Exemple : les élèves non admis de la 4AP et les admis de la 3AP de l’année actuelle devront être regroupé dans le tableau de scolarité de la 4AP de l’année prochaine

Le classeur est compose de 6 feuilles de la 1AP à 6AP

Les admis de la 6AP ne devront plus exister dans le classeur de l’année prochaine car ils iront au collège

Aider moi pour importer les données du classeur année actuelle vers le classeur année prochaine et merci infiniment

vous trouverez le deux fichiers en fichier joint :

http://www.cjoint.com/c/FEwuhEN7HCB

Publicité
ferrand
 Posté le 22/05/2016 à 22:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Petite question : à quoi correspondent les numéros (colonne à droite), on les ignore pour transférer ?

Cordialement.

noe2008
 Posté le 22/05/2016 à 23:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Ce sont des numéros d'ordre uniquement on peut les ignorer si on veut

ferrand
 Posté le 22/05/2016 à 23:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Et cadrage des données à tranférer : colonnes F à X ?

noe2008
 Posté le 22/05/2016 à 23:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

l'important c'est d'importer les noms et prénoms , date de naissance et si possible num de scolarité

ferrand
 Posté le 23/05/2016 à 00:50 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Tu devras attendre (à moins que quelqu'un d'autre s'y colle) car tes cellules fusionnées bloquent toute possibilité de tri.

Par conséquent l'opération ne peut plus être bouclée avec la macro de 20 lignes (déjà écrite) et devient infiniment plus compliquée, car au lieu d'avoir deux blocs par feuille il va falloir monter des tableaux alimentés élève par élève... Ce que je n'ai nulle intention de poursuivre à cette heure...

Cordialement.

ferrand
 Posté le 23/05/2016 à 01:19 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Peut-être pas finalement. J'ai fait 2 macros de plus, une pour défusionner, une pour fusionner.

J'essaierai ça demain dès que j'ai un moment.

noe2008
 Posté le 23/05/2016 à 08:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci Ferrand

ferrand
 Posté le 23/05/2016 à 08:35 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

http://www.cjoint.com/c/FExgw3lvxHy

Classeur "année prochaine" qui contient les macros. Un bouton sur la feuille 1

Finalement, l'adaptation a bien fonctionné : on défusionne les 2 classeurs au départ et on les refusionne à la fin.

Mais cela ne semble pas très logique de fusionner ainsi des listes de ce type sur lesquelles on a en principe besoin d'opérer des tris.

Le transfert insère les "A" du niveau inférieur de l'année préc. en tête de liste (sauf pour la 1), suivis des "R" du même niveau année préc.

J'ai rattrapé les bordures et le centrage pour l'ensemble des lignes.

Bonne continuation.

Publicité
noe2008
 Posté le 23/05/2016 à 08:36 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

si la macro n'est pas si délicate et si on peut traiter le problème avec des formules ça marche pour moi

Debrief
 Posté le 23/05/2016 à 13:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

ferrand a accompli un véritable miracle avec sa macro dans ce fichier Excel bourré de cellules fusionnées. Je comprends même pas comment ça marche

Le tableau des élèves est complètement "intriable" à cause des cellules fusionnées, et même si on reportait manuellement les élèves, il faudrait le faire dans l'ordre de tri sans pouvoir utiliser le tri d'Excel ! Il faut éviter les cellules fusionnées autant que possible dans les tableaux de données.

Si j'ai un peu de temps je m'essaierai ce soir (juste pour voir un peu) comment se dépatouiller de ce truc avec un feuille intermédiaire sur laquelle j'ai pu faire et reporter le tri dans les feuilles d'origine en manuel.

Cordialement,
D.

noe2008
 Posté le 23/05/2016 à 13:57 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

merci ferrand vous êtes vraiment un pro

Debrief
 Posté le 23/05/2016 à 15:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Une autre approche, plus empirique, mais dans un fichier Excel séparé.

http://www.cjoint.com/c/FExm4sFgwAA

Avant de procéder, il serait bon d'homogénéiser les bordures de la colonne "resu fin année" dans les différentes feuilles.
La macro ne faisant que récupérer les lignes entre les feuilles telles qu'elles sont.

En fait, une refonte de ce fichier lui ferait du bien :)

noe2008
 Posté le 23/05/2016 à 16:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci Debrief ça fonctionne

Debrief
 Posté le 23/05/2016 à 19:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Mouais, au format date près, faut que je voies.

Debrief
 Posté le 23/05/2016 à 22:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bon au final, c'était pas grand chose à modifier pour conserver le format d'origine des dates.

Pour info j'ai fait le tri sur le numéro de scolarité: voir (ALT + F11) dans la macro Const ColonneTri = "V", pour trier sur le nom, changer en Const ColonneTri = "Q"

Et pour le fun j'ai enjolivé un peu le dialogue du début pour la saisie des noms de fichiers et au passage rajouté un "save" du fichier résultat de l'année prochaine après valorisation.

http://www.cjoint.com/c/FExvazrxi0A


... / ...

Et juste au cas où tu voudrais utiliser un fichier plus simple et plus homogène tel que celui-là http://www.cjoint.com/c/FExwqLnnGEA, je peux te refaire la macro en conséquence.

Cordialement,
D.



Modifié par Debrief le 24/05/2016 00:17
ferrand
 Posté le 23/05/2016 à 23:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Publicité
PappyYves
 Posté le 24/05/2016 à 19:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bien que le sujet soit résolu, je souhaite apporter une information pour les utilisateurs d'Excel, en particulier pour noe2008, si quelqu'un lit encore ce sujet.

En tant que formateur Excel (restons modeste, formateur à mon niveau, en interne dans mon entreprise), quand on utilise Excel en tableur, c'est à dire pour des calculs, la présentation étant secondaire, j'ai toujours conseillé fortement d'éviter les cellules fusionnées, c'est la galère dans les calculs.

La plupart du temps, on fait la même présentation avec l'option "centrer sur plusieurs colonnes" pour les cellules "horizontales".

Par contre, pour centrer plusieurs cellules "verticales" je n'ai pas de solution...

Debrief
 Posté le 24/05/2016 à 20:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour PappyYves,

En effet, ta remarque est judicieuse est c'est bien ce que les réponses précédentes ont mis en évidence. D'ailleurs, le 23/05/2016 à 22:30, j'ai envoyé (pour soulager ma conscience si ce n'est pour aider le demandeur qui en avait terminé avec le sujet bien avant cela) un fichier ne contenant pas de cellules fusionnées dans la partie données (liste de élèves).

On trouve ce genre de fichier dans les administrations ou autres organisations, initialement fabriqués par des personnes non spécialement averties sur Excel et repris par d'autres personnes pour une utilisation qui va amener des transformations diverses. Le résultat final n'a d'Excel que la présentation visuelle sans les potentialités du tableur. Mais si cela répond aux besoins, why not... Surtout quand malgré cela, PC Astuces fournit les connaisseurs comme ferrand ou les bidouilleurs comme moi pour rattraper le coup .

Cordialement,
D.



Modifié par Debrief le 24/05/2016 20:07
LORENZO83
 Posté le 25/05/2016 à 03:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour le forum

Le sujet est résolu, mais j'apporte une solution basée sur un raisonnement différent.

C'est sûr qu'un tableau rempli de cellules fusionnées interdit toutes opérations de tri. le Tri est la solution première qui vient à l'esprit pour traiter ce genre de problème, seulement, dé-fusionner, filtrer, recopier chaque zone filtrée puis re-fusionner pour retrouver le tableau d'origine prend un temps énorme.

Alors pourquoi ne pas récupérer les toutes données directement dans chaque cellule ciblée et restituer le tout dans le deuxième tableau avec le même principe. Résultat une rapidité d'exécution qui n'est pas comparable avec la solution par à la précédente.

Proposition: Ouvrez les 2 fichiers (dans la même session Excel), allez sur la feuille1 de l'année actuelle et cliquez sur le bouton "Scolarité"

http://www.cjoint.com/c/FEzbA52Sebw pour l'année actuelle

http://www.cjoint.com/c/FEzbK6v46Nw pour l'année prochaine

A tester

Cordialement

Debrief
 Posté le 25/05/2016 à 09:06 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour LORENZO83,

Du Var ? Alors voisins.

C'est une autre solution qui fonctionne bien où tu choisis de manipuler les données individuellement plutôt que par lignes comme dans les options précédentes. Cependant tu ne fais pas de tri sur les feuilles de l'année prochaine, ce qui serait possible de faire directement dans tes tableaux en mémoire.

Au niveau du temps apparent de construction de l'année prochaine, à un chouia près c'est la même chose (1 à 2 secondes) pour les 3 solutions, et en terme de temps CPU (colonne Temps processeur à ajouter dans le Gestionnaire de Tâches), c'est quasi-identique pour les 3, sur mon PC:

Cordialement,
D.



Modifié par Debrief le 25/05/2016 09:34
noe2008
 Posté le 25/05/2016 à 15:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

salut les amis

je vous remercie tous pour vos efforts

en ce qui concerne les cellules fusionnées on ne peut rien changer car il s'agit d'un classeur qui est exporté à partir d'un portail

je souhaite que la macro une fois ouverte me demande a chercher l'emplacement du fichier année actuelle sans imposer des noms pour les deux classeur c'est à dire de cette façon :

Sub scolarité()

Dim Fich As String

Fich = Application.GetOpenFilename

Workbooks.Open (Fich)

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

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

ActiveWorkbook.Close

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

Debrief
 Posté le 25/05/2016 à 17:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Salut noe2008,

Dans le fichier que j'ai posté le 23/05/2016 à 22:30 http://www.cjoint.com/c/FExvazrxi0A la macro te demande le nom des fichiers.
Je peux la modifier pour aller chercher le fichier via l'Explorer.

Cordialement,
D.



Modifié par Debrief le 25/05/2016 17:45
noe2008
 Posté le 25/05/2016 à 19:41 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

je ne suis pas si fort en vba si tu peux me faire la modification ça sera tres gentil de ta part

Debrief
 Posté le 25/05/2016 à 20:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bon voilà une macro modifiée pour sélectionner les fichiers:
- Directement ou via l'Explorer pour le fichier de l'année actuelle
- Directement uniquement pour le fichier de l'année prochaine puisqu'il est créé "from scratch" à partir de l'année actuelle.

http://www.cjoint.com/c/FEzsnn7M7jr

Comme auparavant, le tri est fait sur le numéro de scolarité: voir (ALT + F11) dans la macro Const ColonneTri = "V".
Pour trier sur le nom, changer en Const ColonneTri = "Q"

Si tu trouves un bug tu me le dis....

Cordialement,
D.



Modifié par Debrief le 25/05/2016 20:13
noe2008
 Posté le 25/05/2016 à 22:56 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

oui pour elle impose le chemin pour le fichier annee prochaine

Publicité
Pages : [1] 2 ... Fin
Page 1 sur 2 [Fin]

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
291,73 €Smartphone Samsung M51 (6,7 pouces FHD+, 6 Go RAM, 128 Go) à 291,73 € livré
Valable jusqu'au 01 Mars

Amazon Espagne fait une belle promotion sur le nouveau smartphone Samsung M51 qui passe à 286,61 € (avec la TVA ajustée). Comptez 5,12 € pour la livraison en France soit un total de 291,73 € livré alors qu'on le trouve ailleurs à partir de 359 €. Le smartphone Samsung Galaxy M51 dispose d'un écran Super AMOLED6.7 pouces d'une résolution de 1080 x 2400 pixels, d'un processeur 8 coeurs Snapdragon 730G et 6 Go de RAM. 128 Go de stockage sont présents et sont extensibles par MicroSD (512 Go max). Pour les moments inattendus de la vie, le quadruple appareil photo est idéal. Prenez de superbes photos de votre monde avec un appareil photo principal de 64 MP ou obtenez une image plus large avec l’angle de vue de 123 ° de l’objectif ultra grand angle 12 MP. Le capteur de profondeur 5 MP ajoute un flou d’arrière-plan et l’objectif macro 5 MP optimise la mise au point sur les gros plans.  A l'avant, un appareil photo 32 MP vous permettra de réaliser vos selphies avec un léger flou d'arrière-plan grâce à la mise au point en direct. Il est soutenu par une batterie de 7000 mAh avec recharge rapide. Les fonctionnalités de connectivité du smartphone incluent WiFi, Bluetooth, GPS, Volte, etc. 

Le Galaxy M51 dispose d’un capteur d’empreinte digitale à l’arrière pour vous connecter aux applications compatibles et déverrouiller votre appareil en toute simplicité. Le tout tourne sous Android 10 en français et est garanti 2 ans. Vous pouvez commander avec votre compte Amazon FR sur Amazon ES et il n'y a pas de douane.


> Voir l'offre
159 €Aspirateur Rowenta Silence Force à 159 €
Valable jusqu'au 01 Mars

Amazon fait une promotion sur l'aspirateur Rowenta Silence Force avec sac qui passe à 159 € livré gratuitement, alors qu'on le trouve ailleurs à partir de 200 €. Il fournit des résultats de nettoyage optimaux sur tous types de sols (tapis, moquettes, sols durs) grâce à 3 niveaux de filtration qui capturent 99.998% de la poussière aspirée. Capacité de 4,5 L.


> Voir l'offre
188,21 €Carte mère Asus TUF X570-Plus Gaming (WiFi) à 188,21 € livrée
Valable jusqu'au 28 Février

Amazon Allemagne fait une promotion sur la carte mère Asus TUF X570-Plus Gaming qui passe à 181,42 € (avec la TVA ajustée). Comptez 6,79 € pour la livraison en France soit un total de 188,21 € livrée. On la trouve ailleurs à partir de 210 €. 

Prête à accueillir les processeurs AMD Ryzen de 3ème génération et compatible avec ceux de 2ème génération, la carte mère ASUS TUF GAMING X570-PLUS est idéale pour concevoir un PC Gaming doté des technologies les plus avancées. Grâce à la prise en charge de la mémoire vive DDR4 jusqu'à 128 Go, des cartes graphiques PCI-Express 4.0, des disques M.2 PCIe 4.0 4x, la carte mère TUF GAMING X570-PLUS profite grâce à son chipset AMD X570, de ce qui se fait de mieux.

Utilisez votre compte Amazon France sur Amazon Allemagne. Pas de douane.


> Voir l'offre

Sujets relatifs
macro pour trier un tableau et effacer les lignes sans saisie
Excel : Macro pour tableau croisé dynamique
Macro pour ajouter une ligne à la fin d'un tableau
ajout de tableau par macro
Macro pour importer des données d'un classeur externe
Macro excel pour attribution de lot
macro pour comparer 2 listes
Creation d' une boucle macro dans fichier EXCEL pour impression
macro afficher masquer lignes tableau dans word 2010
Macro pour word 2013
Plus de sujets relatifs à Macro pour un tableau de scolarité
 > Tous les forums > Forum Bureautique