Multiplier une macro

  • Initiateur de la discussion Initiateur de la discussion Nitrog
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

Nitrog

Guest
Re bonjour le forum,

J'ai encore une question un peu plus compliquée, j'ai une macro qui prend les données de 2 feuilles et qui compare ces données sur une 3ème, sa marche super bien, mon problème est que j'aimerai la multiplier 200 fois.
Question: peut on la simplifier et la reproduire pour tenir compte du décalage des lignes.

Fichier en annexe.

Encore merci

Nitrog
 

Pièces jointes

Re : Multiplier une macro

Bonjour

ceci devrait faire

Code:
Sub propag()
x = 5
z = 1
For i = 3 To 203
    Sheets("Actuel").Select
    Rows(i & ":" & i).Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Comparatif").Select
    Rows(i + z & ":" & i + z).Select
    Selection.Insert Shift:=xlDown
    z = z + 1
    Rows(i + z & ":" & i + z).Select
    Application.CutCopyMode = False
    Selection.Insert Shift:=xlDown
    Selection.Interior.ColorIndex = xlNone
    Cells(x, 1).Select
    'Range("A5").Select
    ActiveCell.FormulaR1C1 = "=+IF(R[-2]C=R[-1]C,"" "",(+R[-2]C-R[-1]C))"
    Cells(x, 1).Select
    'Range("A5").Select
    Selection.Copy
    Range(Cells(x, 2), Cells(x, 26)).Select
    'Range("B5:Z5").Select
    ActiveSheet.Paste
    Cells(x, 1).Select
    'Range("A5").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    z = z + 1
    x = x + 3
Next
End Sub

Cdlt

RGI
 
Dernière édition:
Re : Multiplier une macro

Hello,

La macro plante, ici "Sheets("Comparatif").Selectil" me semble qu'il manque la feuille Offre dans la macro, c'est peut être a cause de ça ?

Merci pour votre aide.

Nitrog
 
Re : Multiplier une macro

Bonjour,

Je reviens sur la macro de Gilbert, alors 1ère chose la feuille compartif était nommée compartif1, j'ai modifier. 2ème, j'ai omis de mettre le dédut de la macro (lol), je la met ci-dessous.

Sheets("Actuel").Select
Cells.Select
With Selection.Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
Rows("1:2").Select
Selection.Interior.ColorIndex = xlNone
Sheets("Offre").Select
Cells.Select
With Selection.Interior
.ColorIndex = 37
.Pattern = xlSolid
End With
Rows("1:2").Select
Selection.Interior.ColorIndex = xlNone
Cells.Select
Selection.Copy
Sheets("comparatif").Visible = True
Sheets("Comparatif").Select
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
ActiveSheet.Paste

J'espère que celà peux vous aider.

Merci beaucoup pour votre soutien

Nitrog
 
Re : Multiplier une macro

Bonjour,

Je reviens sur la macro de Gilbert, alors 1ère chose la feuille compartif était nommée compartif1, j'ai modifier. 2ème, j'ai omis de mettre le dédut de la macro (lol), je la met ci-dessous.

Sheets("Actuel").Select
Cells.Select
With Selection.Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
Rows("1:2").Select
Selection.Interior.ColorIndex = xlNone
Sheets("Offre").Select
Cells.Select
With Selection.Interior
.ColorIndex = 37
.Pattern = xlSolid
End With
Rows("1:2").Select
Selection.Interior.ColorIndex = xlNone
Cells.Select
Selection.Copy
Sheets("comparatif").Visible = True
Sheets("Comparatif").Select
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
ActiveSheet.Paste

J'espère que celà peux vous aider.

Merci beaucoup pour votre soutien

Nitrog

le fichier serait mieux sans données confidentielles évidemment

@+++
 
Re : Multiplier une macro

Je pense que c'est mieux pour comprendre, voilà le fichier en annexe, j'ai mis la macro de Gilbert et le début de la mienne.

Le but: dans comparatif copier ligne 3 de actuel, copier ligne 3 d'offre et de comparer sur la ligne en dessous les deux.

J'espère être clair ???

A+++

Nitrog
 

Pièces jointes

Re : Multiplier une macro

C'est presque parfait, seul la comparaison ne jour pas, en effet je voudrai qu'il me donne la différence entre actuel et offre, la il m'indique rien si c'est pareil (c'est OK) en revanche ou il y a une différence il m'indique erreur.

Autrement c'est super.

Merci beaucoup.

Nitrog
 
Re : Multiplier une macro

C'est presque parfait, seul la comparaison ne jour pas, en effet je voudrai qu'il me donne la différence entre actuel et offre, la il m'indique rien si c'est pareil (c'est OK) en revanche ou il y a une différence il m'indique erreur.

Autrement c'est super.

Merci beaucoup.

Nitrog

c'est ce que j'ai indiqué dans le code voir pour le modifier à votre convenance

j'ai mis une formule qui fonctionne 😀 mais le contraire de la votre afin que vous puissiez voir où était le defaut

pour mettre dans votre sens il n'y a pas beaucoups de modifications à faire dans la fonction SI

= Si(test logique;sivrai;sifaux)

Voilà @+++++

RGI
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour