[EXCEL2010] incrementation apres sauvegarde

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 à 13:29
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 - 8 nov. 2011 à 14:06
Bonjour,
J'ai une macro de sauvegarde que vous m'avez aider à améliorer
Elle enregistre les donnees dans une feuille

voici le code

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)
Dim Chemin As String
Chemin = "C:\Users\Cedric\Desktop\old"
Sheets("Facture").Copy
With ActiveWorkbook
    .SaveAs Chemin & "\" & nom
    .Close
End With
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
Sheets("vente").Select
End Sub



Pour la peaufiner j'aurai souhaiter qu'apres l'enregistrement elle incremente la cellule M23 (numero facture)
Comment dois je faire ? (je ne connais pas toujours pas vba et je pense qu'il va falloir m'y mettre pour arreter de vous harceler avec mes questions ^^)
Je pensais à quelque chose comme ca (j'essai de deviner un peu)

Sheets("vente").Select
    Range("M23").Value = ("M23").Value +1


que je placerai avant le End Sub mais bien entendu elle ne marche pas (ben oui j'ai un QI d'huitre pour le vba )

Auriez vous une solution et si possible l'explication pour que je comprenne le cheminement

Merci :)

A voir également:

2 réponses

ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 5
8 nov. 2011 à 13:46
Ah ben à force d'essayer j'ai trouvé :)

Sheets("vente").Select
Valeur = "+1"
      Range("M23").Value = Range("M23").Value + Valeur


C'est en forgeant qu'on devient forgeron :)
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 757
8 nov. 2011 à 13:48
Inutile de passer par une variable...
Range("M23").Value = Range("M23").Value + 1

suffit non?
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 à 14:06
arf je l avais presque au premier essai il me manquait un Range grrrr

Je l ai modifié en prenant ton code c'est bien mieux oui
Me suis compliqué la vie pour rien

Merci pijaku
0

Discussions similaires