Macros VBA

Boubou -  
 Boulette -
Bonjour,

Je suis actuellement en 1ère année de bts Informatique en alternance,
et mon projet en entreprise consiste en une manipulation de données dans un tableau excel.
Etant débutant en VBA..j'ai quelques difficultés =(
On peut diviser le travail en 3 grands axes :

I -

* Etant dans le fichier excel contenant les macro (elles débuteront automatiquement grace à "sub auto_open()")
une open box doit permettre à l'utilisateur de séléctionner le fichier à analyser. Un filtre fera en sorte que les fichiers sélectionnables ne soient que des fichiers Excel simples ou contenants des macros).
* Ce fichier devra être copié (sauvegardé) automatiquement à la racine (c:\), et le fichier original devra être fermé, afin que l'on travaille sur la copie.

II -

* Maintenant, l'utilisateur doit pouvoir sélectionner dans une liste box, la catégorie d'employé qu'il désire traiter..(il a ya 4 catégories : Apprenti, Cadre, Ouvrier, Technicien).
Selon ce qu'il a sélectionné (il ne peut sélectionner qu'une catégorie), la macro doit activer dans la colonne intitulée "catégorie", chaque cellules contenant la catégorie désirée, puis copier leurs lignes, mais selon certains critères (par exemple : on copie la ligne de chaque apprenti, mais on veut dans cette ligne juste le nom, le prenom, le salaire, et pas le numéro de téléphone, l'adresse, le statut etc..[qui sont les titres des colonnes correspondantes]).

III -

* Un nouveau tableau devra être créer sur une nouvelle feuille, avec les éléments selectionnés, et mis en forme. * Puis un graphique devra être réalisé automatiquement selon ce tableau (avec pour données, les salaires et le nombre d'employés et pour titre, le nom de la catégorie séléctionnée dans la liste box).
* Pour finir, le tableau et le graph devront être imprimés après avoir demandé a l'utilisateur si il souhaitait imprimer ou pas.

IV -

* Je créerai un .exe et afin de rendre cela plus présentable, je le ferai à partir de Visual Studio 2008 - Windows Form..

Si quelqu'un pouvait m'aider, surtout pour les 2 premières parties, ce serait génial ^^ Merci.

3 réponses

Manu
 
Pour ta partie 1, sans filtre il y a un code très simple,
Sub Opendial
Application.Dialogs(xlDialogOpen).Show
End Sub

ensuite pour sauvegarder tu peux utiliser ceci
Sub selection_copie()
Application.Workbooks("nom du fichier").SaveAs ("Copie")
End Sub
ça va te sauvegarder de classeur sous le nom copie, tu verra la modification dans ta liste de classeurs et feuilles dans "VBA project" (sur la gauche). ça ne sauvegardera pas physiquement sur ton disque, mais la sauvegarde sera "temporaire" on va dire et ce n'est qu'à la fermeture du fichier que l'on te demandera "voulez vous enregistrer les modifications apportées à..", et la tu cliquera sur nan, je pense que c'est mieux (?) puisque la copie ne sert qu'à travailler dessus tu ne veux pas la conserver.
1
Master ;)
 
choooooo ton truc la !
dsl j'peux rien faire pour toi =S
0
Boulette
 
Moi non plus je peux rien faire pour toi, mais j'te conseille de commencer directement par le windows form dans visual studio parce qu'enregistrer les macros ds une feuille ça sera utile pour les tester mais c'est une perte de temps..
0