comment ca marche une macro

sedan

XLDnaute Nouveau
Bonjour à tous,

Je voudrais savoir comment faire pour installer une macro et ensuite la marche à suivre pour l'utiliser.

Merci pour vos réponses.
 

Abel

XLDnaute Accro
Bonjour sedan,

Une première approche pour débuter avec les macro est d'utiliser l'enregistreur de macro.

Menu outils/macro/enregistrer une macro.

Puis tu fais les démarches que tu veux voir exécuter par ta macro : format de cellules, ajoouts de lignes suppression de colonne, recherche, bref, à peu près tout ce que tu veux.

Puis tu clique sur le bouton 'Arrêter l'enregistrement'.

Cette démarche va enregistrer pour toi out le code correspondant à ce que tu as fais précédemment.

Pour voir ce code, va dans l'éditeur de macro. Soit par le menu Outils/Macro' soit avec les touches 'Alt+F11'.

Pour lancer cette macro, tu peux créer un bouton sur une feuille.
Menu 'Affichage/Barres d'outils/Boite à outils contrôles'.
Dans cette barre, il y a un contrôle pour créer des boutons. Tu le sélectionne, tu va sur ta feuille et tu crée un bouton comme si tu créais un dessin. Puis tu double clique sur ce bouton. Cela va t'ouvrir une fenêtre pour créer du code avec deux lignes du genre 'Private sub commandbutton1_quandclick()' et 'end sub'.
Entre ces deux lignes, tu tape le nom de la macro qui a été créée avec l'enregistreur.
Enfin, reviens sur ta feuille. Clique sur la petite équerre en haut à gauche de la barre d'outils 'Boite à outils contrôles' pour désactiver le mode création.
Ton bouton est prêt à être utilisé.

Bon courage.

Abel.
 

sedan

XLDnaute Nouveau
Bonjour,


J'ai copié une macro, ensuite collé dans le module puis je clique sur F5 pour démarrer cette macro et j'obtiens une fenêtre me disant qu'il y a une erreur de compilation et erreur de syntaxe.

Pourrais-tu me dire ce que j'ai fait comme erreur.

Merci pour la réponse
 

porcinet82

XLDnaute Barbatruc
salut sedan

est ce que tu parles de la macro contenu dans le fichier excel présent dans le lien que je t'ai donné au précédent post? si c le cas, il faut que tu colle tout le contenu du module pour que cela fonctionne.

mais si je peux me permettre, cette ou plutot ces macro sont assez compliquées pour qqun qui commence le vba. enfin ce que j'en dit...

tiens moi au courant pour d'autre explication, bon courage et bonne journée

@+
 

sedan

XLDnaute Nouveau
Bonjour,

Voilà j'ai copier une macro sur ce site, Ce site n'existe plus

Voici la macro que j'ai copié


Attribute VB_Name = 'CelluleClignotante3'

'Si tu veux que ça 'clignote', passage obligé par le VBA !
'Un exemple de 'clignotement' particulier pour le MIN de la plage A1:D10 :
'Dans le module de la feuille (clic droit sur l'onglet > Visualiser le code)

'Private Sub Worksheet_Change(ByVal Target As Range)
' If Not Intersect(Target, Range('A1:D10')) Is Nothing Then CLIGNOTE
' Target.Select
'End Sub

'Dans un module standard :

Declare Sub Sleep Lib 'kernel32' (ByVal dwMilliseconds As Long)

Sub CLIGNOTE()
'Alain Vallon, mpfe

[A1:D10].Find _
(What:=Application.WorksheetFunction.Min([A1:D10]), LookAt:=xlWhole).Activate
mémo1 = ActiveCell.Font.ColorIndex
mémo2 = ActiveCell.Font.Size
For x = 1 To 5
For i = 10 To 20
ActiveCell.Font.ColorIndex = 3
ActiveCell.Font.Size = i
Sleep (5)
DoEvents
Next i
ActiveCell.Font.Size = 12
ActiveCell.Font.ColorIndex = 1
Next x
ActiveCell.Font.ColorIndex = mémo1
ActiveCell.Font.Size = mémo2
End Sub


Merci pour ton aide
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Porcinet82, Sedan, le Forum

Je suis du même avis que toi, je pense que notre ami devrait commencer par des exercices plus simples et surtout plus fondamentaux que de faire clignotter des Cellules.

D'autant plus que le fichier mis en lien n'est pas non plus une référence en exercice de style, car faire tourner des boucles en cascades plusieurs fois grace à des 'Goto Line Label' pour avoir une tempo, entre vraiment dans le domaine du bricolage.

Non pour Sédan, essaies des chose plus basics et rationnelles, exemple d'exercice :

Colorier en Rouge toutes les cellules d'un tableau dont le montant est Négatif et en Vert toutes celles avec un montant Positif :

Option Explicit 'Pour obliger à déclarer les Variables

Sub PremierMacroPourSedan() 'Nom de la Macro

Dim Cellule As Range 'Déclaration de Variable Objet 'Range'

'Démarrage d'une boucle pour scanner chaque Cellules de la Plage Occupée
For Each Cellule In ActiveSheet.UsedRange
   
   
'Première Condition : Si La Cellule est une Valeur Numérique et Non Vide
   
If IsNumeric(Cellule.Value) And Not IsEmpty(Cellule) Then

               
'Seconde Condition Imbriquée en Cascade : Si la Cellule est en dessous de 0
               
If Cellule.Value < 0 Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
'Action si la condition est Vraie
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Cellule.Interior.ColorIndex = 3
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
'Sinon...
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
'Action si la Condition est Fausse
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Cellule.Interior.ColorIndex = 4
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
'Fin de la Seconde Condition
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;
'Fin de la Première Condition
&nbsp; &nbsp;
End If

'Passage à la Cellule suivante
Next

End Sub 'Fin de la Macro

Voilà, en mettant ceci dans un Module Standard, et en écrivant quelque chiffres négatifs et positifs sur la Feuille active, tu devrais avoir fait ta première macro en boucle.

Bonne Journée
@+Thierry

EDITION ! :
Sorry je n'avais pas encore vu ton dernier message, et bien évidemment je ne parlais pas de la Macro de Frédérique Sigonneau pour 'L'exercice de Style' dans le Présent Message.

Message édité par: _Thierry, à: 05/04/2005 10:07
 

Discussions similaires

Réponses
3
Affichages
254
Réponses
16
Affichages
718

Statistiques des forums

Discussions
312 733
Messages
2 091 470
Membres
104 952
dernier inscrit
danielloureiro0943@gmail.