[EXCEL2010] Legere modification sur macro svp

Résolu
Bonjour,
J'aurai besoin d'une petite aide pour modifier légèrement un bout de code svp

Sub Sauvegarder()
Set Source = Union(Range("M17"), Range("M23"))
If Application.CountA(Source) < 2 Then
MsgBox "Entrez un nom de client et une numero de facture pour valider la sauvegarde"
Else
Dim nom As String
    nom = Range("M17") & "_fact" & Range("M23") & "_" & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".xlsm"
    ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & nom
    rep = MsgBox("Votre base de données est sauvegardée sous le nom : " & nom, vbYes + vbInformation, "Copie sauvegarde classeur")
If MsgBox("Voulez vous effacer les données ?", _
    vbYesNo, "Attention !") = vbYes Then Range("B3:B26,C3:C26,F3:F26,H3:H26,M17:P17,M19:P19,M21:P21,M23:P23,M25:P25,M27:P27,M29:P29,M30:P30,M31:P31,M32:P32,M33:P33").ClearContents
End If
End Sub


Dans ce code je souhaiterais effectuer la sauvegarde non pas du workbook complet mais de la feuille "Facture" tout en conservant les vérifications
un peu du style

sheets("Facture").SaveCopyAs sheets("Facture").Path & "\" & nom


Cette macro est sur une feuille "Vente"

Merci pour votre aide

2 réponses

  1. Merci pijaku pour ton aide :)

    Ta modification est impecable
    Je peux me mettre mes factures en fichier old grace a toi

    Merci beaucoup
    0
    1. Modérateur
      Salut,
      Tu peux faire comme ceci :
      - Copie de la feuille "facture" dans un nouveau classeur,
      - Enregistrer sous ce nouveau classeur,
      - Fermer ce classeur.
      Ca se traduit en VBA, du moins, il me semble, par :
      Dim Chemin As String
      Chemin = ActiveWorkbook.Path
      sheets("Facture").Copy
      With ActiveWorkbook
          .SaveAs Chemin & "\" & nom
          .Close
      End With

      Ce code est à inscrire (après corrections éventuelles) en lieu et place de :
      ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & nom
      0