Bonjour à tous,
J'ai un souci avec un code pour une macro,
je vous laisse le code pour une explication sachant que je ne m'en suis jamais servi jusqu'à ce jour.
Je suis vraiment une novice concernant ce sujet.
Ci-aprés le code en question et en fichier joint un exemple, le but étant de créer une nouvelle base de données à partir de 2 autres.
Je ne sais pas du tout comment faire pour l'insérer ce code...
Faut-il passer par Visual Basic???? je 'nai aucune idée !!!!!!!!
Merci de votre aide
Code:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Derlign = Sheets("bdd A").Range("A" & Application.Rows.Count).End(xlUp).Row
Derlign2 = Sheets("bdd B").Range("A" & Application.Rows.Count).End(xlUp).Row
Derlign3 = Derlign + Derlign2 - 1
With Sheets("bdd c")
If .Range("A2") <> "" Then .Range("A2:J" & .Range("A" & Application.Rows.Count).End(xlUp).Row).ClearContents
Sheets("bdd A").Rows("2:" & Derlign).Copy Destination:=.Range("A2")
.Range("K2:K" & Derlign) = "A"
Sheets("bdd B").Rows("2:" & Derlign2).Copy Destination:=.Range("A" & Derlign + 1)
.Range("K" & Derlign + 1 & ":K" & Derlign3) = "B"
.Range("L2:L" & Derlign3).FormulaLocal = "=SOMMEPROD(($A$2:$A$" & Derlign3 & "=$A2)*($K$2:$K$" & Derlign3 & "=""A"")*1)"
For i = Derlign3 To 1 Step -1
If .Cells(i, 12).Value <> 0 Then .Rows(i).Delete
Next i
.Columns("K:L").ClearContents
.Activate
End With
Application.ScreenUpdating = True
End Sub
J'ai un souci avec un code pour une macro,
je vous laisse le code pour une explication sachant que je ne m'en suis jamais servi jusqu'à ce jour.
Je suis vraiment une novice concernant ce sujet.
Ci-aprés le code en question et en fichier joint un exemple, le but étant de créer une nouvelle base de données à partir de 2 autres.
Je ne sais pas du tout comment faire pour l'insérer ce code...
Faut-il passer par Visual Basic???? je 'nai aucune idée !!!!!!!!
Merci de votre aide
Code:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Derlign = Sheets("bdd A").Range("A" & Application.Rows.Count).End(xlUp).Row
Derlign2 = Sheets("bdd B").Range("A" & Application.Rows.Count).End(xlUp).Row
Derlign3 = Derlign + Derlign2 - 1
With Sheets("bdd c")
If .Range("A2") <> "" Then .Range("A2:J" & .Range("A" & Application.Rows.Count).End(xlUp).Row).ClearContents
Sheets("bdd A").Rows("2:" & Derlign).Copy Destination:=.Range("A2")
.Range("K2:K" & Derlign) = "A"
Sheets("bdd B").Rows("2:" & Derlign2).Copy Destination:=.Range("A" & Derlign + 1)
.Range("K" & Derlign + 1 & ":K" & Derlign3) = "B"
.Range("L2:L" & Derlign3).FormulaLocal = "=SOMMEPROD(($A$2:$A$" & Derlign3 & "=$A2)*($K$2:$K$" & Derlign3 & "=""A"")*1)"
For i = Derlign3 To 1 Step -1
If .Cells(i, 12).Value <> 0 Then .Rows(i).Delete
Next i
.Columns("K:L").ClearContents
.Activate
End With
Application.ScreenUpdating = True
End Sub
Pièces jointes
Dernière édition: