Explication détaillée de Macros

  • Initiateur de la discussion Marboi
  • Date de début
M

Marboi

Guest
Bonjour à vous tous,

Vous avez été hyper sympa de me modifier, voire de me construire deux macros pour mes projets. Elles fonctionnent à merveille et je voulais savoir si vous aviez un peu de temps et me l'expliquer pas à pas, que telle ou telle fonction permet de faire ceci ou celà. Je reconnais avoir du mal avec les macros, j'ai d'ailleurs commandé le CD de Gaëtan Mourmant pour essayer de comprendre.
Les voici :

Sub Nouveau_dossier()
Sheets('Liste').Select
Range('A16: F22').Select
Selection.Copy
Sheets('Saisie').Select
derlin = Range('A65536').End(xlUp).Row
Range('A' & derlin + 2).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
_______

Sub Couper_Coller_Perdu_Vendu()
Application.ScreenUpdating = False
For n = 1 To Range('E65536').End(xlUp).Row
If Cells(n, 5) = 'PERDU' Then
Sheets('Saisie').Select
Range('A' & n & ':F' & n + 6).Select
Selection.Copy
Sheets('Dossier perdu').Select
derlin = Range('A65536').End(xlUp).Row
Range('A' & derlin + 2).Select
ActiveSheet.Paste
For y = n + 6 To n Step -1
Sheets('Saisie').Select
Rows(y).Delete
Next y
Application.CutCopyMode = False
Sheets('Saisie').Select

End If
If Cells(n, 5) = 'VENDU' Then
Sheets('Saisie').Select
Range('A' & n & ':F' & n + 6).Select
Selection.Copy
Sheets('Dossier vendu').Select
derlin = Range('A65536').End(xlUp).Row
Range('A' & derlin + 2).Select
ActiveSheet.Paste
For y = n + 6 To n Step -1
Sheets('Saisie').Rows(y).Delete
Next y
Application.CutCopyMode = False
Sheets('Saisie').Select
Range('A1').Select
End If
Next n
Application.ScreenUpdating = True
End Sub

Merci d'avance
 

ccpapy

XLDnaute Impliqué
bonjour, je vais essayer de m'y coller :eek:
les lignes du style

Sub Nouveau_dossier()
nom des macros appelées (les macros commencent par sub et finisent par end sub

les lignes du style

Sheets('Liste').Select
on selectionne la page sur laquele on va travailler


les lignes du style

Range('A16: F22').Select
de même , on selectionne la plage de cellules

les lignes du style

Selection.Copy

on applique coupier à la selection

les lignes du style

derlin = Range('A65536').End(xlUp).Row
on cherche la derniere ligne ecrite de la colonne A
derlinétant un nom que l'on donne arbitrairement.

les lignes du style

Application.CutCopyMode = False
on deselectionne la plage

les lignes du style

Application.ScreenUpdating = False
Application.ScreenUpdating = True
on fige l'image à l'écran pendant que la macro travaille et on réactive l'image à la fin de la macro

les lignes du style

If Cells(n, 5) = 'PERDU'
on definit une condition si la cellule est 'perdu' alors....

les lignes du style

Rows(y).Delete
efface les lignes selectionnées

voilà en gros les principales lignes qui reviennent... bon courage pour l'apprentissage du livre


:lol: à+
 
M

Marboi

Guest
B) Merci CCpapy, c'est déjà un bon début. Pas simple de tout comprendre quand on se lance seul dans cette aventure. Heureusement qu'il y a des gars sympas comme vous tous sur ce forum pour aider des novices comme moi. J'espère d'ailleurs ne pas abuser.

Je me demandai si je pouvais trouver une 'bible' qui donnerait toutes les explications de chaque fonction.

Encore merci et A+ :)
 

ccpapy

XLDnaute Impliqué
:) la bible, elle est ici :) avec tous les 'Maitres Barbatruc' de ce forum :) et dieu sait si ils sont tous sympas ;)
personnelement , je préfère parcourir le forum , tenter de comprendre les 'oeuvres' de ces 'Maitres' tenter d'aider les rares fois où je le peux, plutot que de lire un bouquin... c'est ma façon d'apprendre et ce pour pas mal de domaine.
amicalement.
à+
 

Discussions similaires

Statistiques des forums

Discussions
312 967
Messages
2 094 033
Membres
105 921
dernier inscrit
PKOB