Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

2 macros qui s enchainent

ninanani

XLDnaute Occasionnel
Bonjour

J ai deux macros qui fonctionne bien separement, j aimerais les faire s enchainer.
C est a dire lorsque j appuis sur un bouton, la premiere macro se met en marche, puis ensuite la seconde.

Voila les macros :

La premiere
Code:
Sub save()

Sheets("paiement").Unprotect ("nina")

Dim der_lig%
der_lig = Sheets("paiement").Range("B65536").End(xlUp).Row + 1
With Sheets("Simple Invoice")
    Sheets("paiement").Range("A" & der_lig).Value = .Range("B11").Value
    Sheets("paiement").Range("B" & der_lig).Value = .Range("G5").Value
    Sheets("paiement").Range("C" & der_lig).Value = .Range("G6").Value
    Sheets("paiement").Range("D" & der_lig).Value = .Range("A19").Value
    Sheets("paiement").Range("E" & der_lig).Value = .Range("A20").Value
    Sheets("paiement").Range("F" & der_lig).Value = .Range("A21").Value
    Sheets("paiement").Range("G" & der_lig).Value = .Range("A22").Value
    Sheets("paiement").Range("H" & der_lig).Value = .Range("A23").Value
    Sheets("paiement").Range("I" & der_lig).Value = .Range("A24").Value
    Sheets("paiement").Range("J" & der_lig).Value = .Range("A25").Value
    Sheets("paiement").Range("K" & der_lig).Value = .Range("A26").Value
    Sheets("paiement").Range("L" & der_lig).Value = .Range("A27").Value
    Sheets("paiement").Range("M" & der_lig).Value = .Range("A28").Value
    Sheets("paiement").Range("N" & der_lig).Value = .Range("A29").Value
    Sheets("paiement").Range("O" & der_lig).Value = .Range("A30").Value
    Sheets("paiement").Range("P" & der_lig).Value = .Range("A31").Value
    Sheets("paiement").Range("Q" & der_lig).Value = .Range("A32").Value
    Sheets("paiement").Range("R" & der_lig).Value = .Range("A33").Value
    Sheets("paiement").Range("S" & der_lig).Value = .Range("A34").Value
    Sheets("paiement").Range("T" & der_lig).Value = .Range("A35").Value
    Sheets("paiement").Range("U" & der_lig).Value = .Range("C19").Value
    Sheets("paiement").Range("V" & der_lig).Value = .Range("C20").Value
    Sheets("paiement").Range("W" & der_lig).Value = .Range("C21").Value
    Sheets("paiement").Range("X" & der_lig).Value = .Range("C22").Value
    Sheets("paiement").Range("Y" & der_lig).Value = .Range("C23").Value
    Sheets("paiement").Range("Z" & der_lig).Value = .Range("C24").Value
    Sheets("paiement").Range("AA" & der_lig).Value = .Range("C25").Value
    Sheets("paiement").Range("AB" & der_lig).Value = .Range("C26").Value
    Sheets("paiement").Range("AC" & der_lig).Value = .Range("C27").Value
    Sheets("paiement").Range("AD" & der_lig).Value = .Range("C28").Value
    Sheets("paiement").Range("AE" & der_lig).Value = .Range("C29").Value
    Sheets("paiement").Range("AF" & der_lig).Value = .Range("C30").Value
    Sheets("paiement").Range("AG" & der_lig).Value = .Range("C31").Value
    Sheets("paiement").Range("AH" & der_lig).Value = .Range("C32").Value
    Sheets("paiement").Range("AI" & der_lig).Value = .Range("C33").Value
    Sheets("paiement").Range("AJ" & der_lig).Value = .Range("C34").Value
    Sheets("paiement").Range("AK" & der_lig).Value = .Range("C35").Value
    
    Sheets("paiement").Range("AL" & der_lig).Value = .Range("F19").Value
    Sheets("paiement").Range("AM" & der_lig).Value = .Range("F20").Value
    Sheets("paiement").Range("AN" & der_lig).Value = .Range("F21").Value
    Sheets("paiement").Range("AO" & der_lig).Value = .Range("F22").Value
    Sheets("paiement").Range("AP" & der_lig).Value = .Range("F23").Value
    Sheets("paiement").Range("AQ" & der_lig).Value = .Range("F24").Value
    Sheets("paiement").Range("AR" & der_lig).Value = .Range("F25").Value
    Sheets("paiement").Range("AS" & der_lig).Value = .Range("F26").Value
    Sheets("paiement").Range("AT" & der_lig).Value = .Range("F27").Value
    Sheets("paiement").Range("AU" & der_lig).Value = .Range("F28").Value
    Sheets("paiement").Range("AV" & der_lig).Value = .Range("F29").Value
    Sheets("paiement").Range("AW" & der_lig).Value = .Range("F30").Value
    Sheets("paiement").Range("AX" & der_lig).Value = .Range("F31").Value
    Sheets("paiement").Range("AY" & der_lig).Value = .Range("F32").Value
    Sheets("paiement").Range("AZ" & der_lig).Value = .Range("F33").Value
    Sheets("paiement").Range("BA" & der_lig).Value = .Range("F34").Value
    Sheets("paiement").Range("BB" & der_lig).Value = .Range("F35").Value
    
    Sheets("paiement").Range("BC" & der_lig).Value = .Range("G36").Value
    Sheets("paiement").Range("BD" & der_lig).Value = .Range("H36").Value
    Sheets("paiement").Range("BM" & der_lig).Value = .Range("B4").Value
    
    Sheets("paiement").Range("BG" & der_lig).Value = .Range("G37").Value
    Sheets("paiement").Range("BH" & der_lig).Value = .Range("H37").Value
    Sheets("paiement").Range("BI" & der_lig).Value = .Range("G38").Value
    Sheets("paiement").Range("BJ" & der_lig).Value = .Range("H38").Value
    
End With

UserForm7.Show

Sheets("paiement").Protect ("nina")
End Sub

Et puis la deuxieme
Code:
Sub IncrementationFactureNumero()

Sheets("Simple Invoice").Unprotect ("nina")

Dim NumberInvoiceNumber As Integer
Dim RangeInvoiceNumber As Range
Dim StringInvoiceNumber As String

Set RangeInvoiceNumber = Sheets("Simple Invoice").Range("G6")
StringInvoiceNumber = ""
With RangeInvoiceNumber
If .Value = "" Then
.Value = StringInvoiceNumber & " " & Format(0, "0")
End If
End With
NumberInvoiceNumber = Val(Mid(RangeInvoiceNumber, Len(StringInvoiceNumber) + 1))
NumberInvoiceNumber = NumberInvoiceNumber + 1
RangeInvoiceNumber = StringInvoiceNumber & " " & Format(NumberInvoiceNumber, "0000")

Range("B11,C19,C20,C21,C22,C23,C24,C25,C26,C27,C28,C29,C30,C31,C32,C33,C34,C35,F19,F20,F21,F22,F23,F24,F25,F26,F27,F28,F29,F30,F31,F32,F33,F34,F35,G37,G38,G39,H37,H38,H39,B4,A19:B19,A20:B20,A21:B21,A22:B22,A23:B23,A24:B24,A25:B25,A26:B26,A27:B27,A28:B28,A29:B29").ClearContents
Range("A30:B30,A31:B31,A32:B32,A33:B33,A34:B34,A35:B35,G37,H37,G38,H38,G39,H39").ClearContents

Sheets("Simple Invoice").Protect ("nina")

End Sub

Desole pour cette question qui doit vous paraitre forte evidente, mais je ne sais vraiment pas comment faire.

Merci de votre aide.
 

WILFRIED

XLDnaute Impliqué
Re : 2 macros qui s enchainent

Salut,

Code:
sub enchainement

call macro1
call macro2

end sub

puis tu applique la macro enchainement à ton bouton. Les call ne sont pas obligatoire mais je trouve qu'il facilite la lecture.

A+
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…