[EXCEL2010] Legere modification sur macro svp

Résolu/Fermé
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 - 8 nov. 2011 à 09:24
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 - 8 nov. 2011 à 12:25
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


A voir également:

2 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
8 nov. 2011 à 09:41
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
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 5
8 nov. 2011 à 12:25
Merci pijaku pour ton aide :)

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

Merci beaucoup
0