Exercice pour s'entrainer en VBA sur excel

bstn -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

Dans un cadre professionnel, je dois réaliser des macros sur excel. Je vais être testé la dessus et j'ai besoin de faire des exercices pour m’entraîner donc si quelqu'un connait un site avec des exos corrigés en vba je suis preneur car je n'ai pas vraiment trouvé.
J'ai suivi tous les cours sur excel-pratique.com et j'ai un niveau intermédiaire.
Vous pouvez aussi m'envoyer des fichiers sources avec des problèmes que vous avez.

Merci à tous, vous allez peut être me permettre de décrocher mon premier emploi
A voir également:

4 réponses

Pierre1310 Messages postés 8854 Statut Membre 652
 
Bonjour,

Tu as appris le VBA orienté objet ou pas encore?
0
bstn
 
je ne connais pas le terme orienté objet mais d’après ce que j'ai vu sur internet rapidement oui.
Je connais bien workbooks("").worksheets("").activate
range("").select
selection.copy
etc etc
J'ai déjà fait une macro qui me permet d'aller ouvrir des fichiers excel, trier les données les copier dans un autre fichier et refermer le premier fichier et ensuite faire des opérations sur ces données par exemple for i = 1 to 100 if cells(i, 3) <> 0 then ... next i
0
Pierre1310 Messages postés 8854 Statut Membre 652
 
La ce que tu me dis, tu utilise les objets d'Excel qui sont déjà créés, moi je te parle d'en créer toi même et de bien les utilisés.
0
bstn
 
ah non alors, pour l'instant j'ai juste besoin de maitriser la base du VBA et d'utiliser les outils excel. Normalement c'est bon mais comme ça fait 5mois que j'en ai pas fait j'aimerai m'entrainer car j'ai un entretien avec un test la dessus
0
Theo.R Messages postés 585 Statut Membre 31
 
Salut !

Je suis aussi dans ton cas, à savoir : j'ai besoin de m'entraîner sur les macro pour mon travail, pour aller plus vite à chaque fois que j'ai besoin d'en faire une.

Le mieux que je puisse te conseiller, c'est quand tu as du temps libre d'essayer de résoudre les problèmes que certains exposent sur ce même forum (même s'ils ont déjà été résolus par d'autres avant, juste pour t'entraîner).

Sinon, petit conseil perso pour ne pas oublier : fais toi un document (type OneNote cest parfait) dans lequel tu colles des bouts de code VBA qui servent très souvent. Par exemple :
- Calculer la 1ère ligne vide d'un tableau / la dernière colonne non vide
- obtenir l'adresse d'une cellule selon son contenu
etc.

Bonne continuation ;)
0
bstn
 
Oui merci Theo, je vais suivre tes conseils. C'est vrai qu'il y a des bouts de code qui reviennent très souvent et c'est une bonne idée de les noter quelque part.
Bonne continuation à toi et si je trouve quelque chose d'intéressant je re-commente ta réponse pour le partager.
0
Theo.R Messages postés 585 Statut Membre 31
 
Pas de souci, j'avoue que je suis en rad' d'exo intéressants là...
0
Pierre1310 Messages postés 8854 Statut Membre 652
 
J'ai un petit exercice pour vous, il est sympa.
Nouvelle feuille Excel.
Cahier des charges :

Réaliser un chateau de cartes à l'horizontale vu qu'en diagonale je doute que ce soit possible.
Colorier les cellules dans les rectangles en bleu pour les paires et rouge pour les impaires.
25 cellules de hauteur pour 15 de largeur.
Exemple

____|_____|______|_____|_____
_____ |____|_____|______|_____|_____|_______
|_____|____|_____|______|_____|_____|_______|

ça vous force à utiliser plusieurs objet excel tout en écrivant un algorithme.
Il est un peu long à vue de nez donc je le propose juste après c'est vous qui voyez ;)
0
Theo.R Messages postés 585 Statut Membre 31 > Pierre1310 Messages postés 8854 Statut Membre
 
Sympa l'idée !

J'ai du mal à voir en quoi l'exemple est un château de carte ô_Ô ...

Qu'est-ce qu'un rectangle "pair" ou "impair" ? Selon la colonne ? la ligne ?
0
Pierre1310 Messages postés 8854 Statut Membre 652
 
Selon la ligne
0
Pierre1310 Messages postés 8854 Statut Membre 652
 

https://www.cjoint.com/c/FAhqk0eTVVv
Un exemple de ce qui est à faire mais en plus grand bien sur ;)
je vous mets une photo d'écran, le site à tout justifier d'ou l'aspect bizarre ^^
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Salut btsn

un apprentissage VBA (bandit manchot): un Sept fait sauter la banque

Dans le zip : le jeu
2 algos: "Las Vegas" et "bandit manchot" (sous algo de "las vegas") qui indiquent le système d'exploitation (étape indispensable)

Ci dessous code pour les applaudissements (je n'en suis pas l'auteur)
Option Explicit
Public music As String

Private Declare Function PlaySound32 Lib "winmm.dll" Alias "PlaySoundA" (ByVal IpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000

' archives mpfe
Sub PlayWAV()

' snd_async: son asynchrone (la musique n'arrete pas le programme)
If Application.CanPlaySounds Then
Call PlaySound32(ThisWorkbook.Path & "\" & "gagné.wav", 0&, SND_ASYNC Or SND_FILENAME)
Else
Exit Sub
End If

End Sub


0