Renommer des classeurs ?

  • Initiateur de la discussion Initiateur de la discussion Venturi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

V

Venturi

Guest
Bonsoir à toutes et à tous,

J'ai un tableau vide excel ("7251.xls") que j'utilise pour des saisies.
A chaque fois que je l'ouvre, un numéro d'ordre s'incrémente, numéro qui devient la nouvelle identité du tableau quand je le sauvegarde (exemple : 17.xls).
Jusque là, ça marche...mais du coup, si j'ouvre à nouveau un tableau déjà réidentifié, il change encore de nom, et là ça ne me va plus.
En résumé, lorsqu'un tableau a été documenté, il doit garder son identité.

Voilà la procédure que j'ai pondu dans ThisWorkbook avec la partie If...then qui ne fonctionne pas
(en même temps il y a une ligne qui affiche l'heure)

Private Sub Workbook_Open()
'Affichage de l'heure courante
Application.OnTime Now + TimeValue("00:00:01"), "Horloge"
'Numérotation des classeurs dans la cellule AM5
If ActiveWorkbookName = ("7251.xls") Then
Worksheets(1).[AM5].Value = Worksheets(1).[AM5].Value + 1
End If
End Sub

Pour info, je suis pire que novice en VB et je découvre tout en fouillant sur internet et en essayant, mais bon, ça ne solutionne pas tout... quoique !

Merci beaucoup pour votre aide précieuse
 
Re : Renommer des classeurs ?

Bonsoir kjin,

C'est pas plus simple d'arriver à mettre au point la condition (If then) dans le fichier de base (7251.xls)??
A moins d'y mettre un automatisme (et là j'applaudis à deux mains, même à trois si je pouvais), dans mon application, on ne peut pas se permettre de bricoler le code de fichier à chaque fois qu'on en ouvre un !

Merci
 
Re : Renommer des classeurs ?

Re,
Si tu penses que ça résoud le pb, alors
Code:
Private Sub Workbook_Open()
'Affichage de l'heure courante
Application.OnTime Now + TimeValue("00:00:01"), "Horloge"
'Numérotation des classeurs dans la cellule AM5
If [COLOR="Red"]ActiveWorkbook.Name[/COLOR] = "7251.xls" Then
Worksheets(1).[AM5] = Worksheets(1).[AM5] + 1
End If
End Sub
A+
kjin
 
Re : Renommer des classeurs ?

Re à tous


Une autre piste (que celle d'un xlt ) à explorer peut être ?
Code:
'dans this worbook
Private Sub Workbook_Open()
Dim NbOrdre As Integer
On Error Resume Next
Err.Clear
NbOrdre = _
    CustomDocumentProperties("Numero_Ordre").Value
If Err.Number <> 0 Then ThisWorkbook.CustomDocumentProperties.Add "Numero_Ordre", False, msoPropertyTypeNumber, 1
ThisWorkbook.CustomDocumentProperties("Numero_Ordre").Value = (NbOrdre + 1)
Application.Calculate
End Sub

'dans un module
Code:
Option Explicit
Private Function AfficheCDP(chaine$) As Variant
Application.Volatile
AfficheCDP = _
            ThisWorkbook.CustomDocumentProperties(chaine).Value
End Function

dans la cellule AM5 (facultatif)
=AfficheCDP("Numer😵rdre")

ensuite on se sert de Numer😵rdre (ou du contenu de AM5) pour créer le nom du classeur incrémenté.
 
Re : Renommer des classeurs ?

Bonjour,

Tu connais ton application ...bien mieux que nous ...
Perso, j'essayerai de trouver une différence réelle entre mon fichier source et le tableau déjà réidentifié ...

Et c'est sur cette différence que tu devrais faire le test d'identification ...
cela peut être le nom,la date, même une cellule drapeau que tu ajoutes volontairement dans un coin , etc ...

A +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

E
Réponses
0
Affichages
1 K
eeyglunent
E
F
Réponses
2
Affichages
8 K
F
L
Réponses
1
Affichages
985
L
S
Réponses
2
Affichages
983
sylvain
S
S
Réponses
9
Affichages
2 K
Sniker
S
Retour