Numérotation auto + nom sauvegarde auto

droopeace

XLDnaute Nouveau
Bonjour à tous,

Je suis nouveau sur ce forum et j'ai un niveau, disons scolaire d'excel

Je souhaiterais créer un systême de numérotation automatique pour créer une référence de dossier, pour ensuite utiliser cette référence comme nom de sauvegarde et l'enregistrer dans un dossier spécifique précis, le tout automatiquement.

Je joins à ce message un fichier excel.

Je sais pas si je suis trés clair dans mes explications.

Merci d'avance de votre aide.
 

Pièces jointes

  • Referencement auto.xls
    16.5 KB · Affichages: 126
Dernière édition:

droopeace

XLDnaute Nouveau
Re : Numérotation auto + nom sauvegarde auto

Je ne comprends pas ce passage, je dois le mettre où ???...

(...) mais n'oublies pas de mettre des:
sheets("nom_de_la_feuill_a_protéger").unprotect Password:="0000" au début de toutes tes méthodes qui doivent écrire dans la feuille.

Mon code devient.

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Application.DisplayAlerts = False
    
    Sheets("Fiche-Support").Unprotect Password:="sade"
    
        Cells(1, 10) = Cells(1, 10) + 1
        If Cells(2, 11) > Cells(1, 11) Then Cells(1, 10) = 1
        
    For i = 5 To 8
        Sauv$ = Sauv$ & Cells(1, i)
    Next i

        Sauv$ = Sauv$ & Format(Cells(1, 9), "yyyy-mm")

        Sauv$ = "c:\" & Sauv$ & "-" & CStr(Format(Cells(1, 10), "000")) & ".xls"
        Cells(1, 11) = Year(Date)
    ThisWorkbook.SaveCopyAs (Sauv$)
    
    [COLOR="Red"]Sheets("Fiche-Support").Protect Password:="0000"[/COLOR]

    Application.DisplayAlerts = True
End Sub
 

Pierwak

XLDnaute Occasionnel
Re : Numérotation auto + nom sauvegarde auto

Re,
Déja dans le code que tu donnes tu dois avoir le meme Mdp pour verrouiller et déverrouiller sinon tu vas avoir un problème. En fait le principe c'est que lorsqu'une macro doit écrire quelquechose sur une feuille protégée elle doit la déprotéger et la reprotéger en fin d'exécution. Ici typiquement tu ne fais que lire des valeurs, donc tu n'as pas besoin de déprotéger ta feuille... par contre tu veux surement qu'elle soit protégée lors de la réouverture après sauvegarde donc il faut que tu mette
Code:
Sheets("Fiche-Support").Protect Password:="0000"
ThisWorkbook.SaveCopyAs (Sauv$)
histoire de verrouiller ta feuille avant de sauvegarder
 

droopeace

XLDnaute Nouveau
Re : Numérotation auto + nom sauvegarde auto

RE RE Bonjour,

Tout d'abord MERCI A TOUS de votre aide, mon projet avance grace à vous, mais il reste quelques détails à régler.

Je vais donc vous exposer mes souhaits.

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Application.DisplayAlerts = False
          
        Cells(1, 10) = Cells(1, 10) + 1
        If Cells(2, 11) > Cells(1, 11) Then Cells(1, 10) = 1
        
        Sheets("2008-05").Unprotect Password:="xxxx"
        
    For i = 5 To 8
        Sauv$ = Sauv$ & Cells(1, i)
    Next i

        Sauv$ = Sauv$ & Format(Cells(1, 9), "yyyy-mm")

        Sauv$ = "c:\" & Sauv$ & "-" & CStr(Format(Cells(1, 10), "000")) & ".xls"
        Cells(1, 11) = Year(Date)
        Sheets("2008-05").Protect Password:="xxxx"
        
    ThisWorkbook.SaveCopyAs (Sauv$)
    
 

    Application.DisplayAlerts = True
End Sub

Ce code me permet bien :

* d'Incrémenter automatiquement mes fiches
* de la sauvegarder avec la référence souhaitée, dans le répertoire souhaité
* de se remettre à 0 à chaque changement d'année

Par contre, je souhaiterais que la fiche sauvegardée avec la nouvelle référence, soit UNIQUEMENT consultable à la REouverture, que TOUTES les cellules de celle ci soit vérrouillée, IMPOSSIBLE de les modifier, sauf en tapant un mot de passe.

Mais il faut que je puisse toujours en créer de nouvelles fiches avec l'incrémentation croissante en cours.

Je souhaiterais aussi qu'un message s'affiche en cas d'écrasement d'un fichier (si une référence existe déjà et qu'elle risque d'en écrasser une autre), pour éviter de pertes idiotement des fiches.

Merci de votre aide, grace à vous, je réalise mes souhaits.
 

Discussions similaires

Réponses
7
Affichages
566

Statistiques des forums

Discussions
315 084
Messages
2 116 060
Membres
112 645
dernier inscrit
Acid Burn