OVH Cloud OVH Cloud

une seule feuille par mois

9 réponses
Avatar
Phil de Paris
Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub

9 réponses

Avatar
FxM
Bonjour,

Ce qui suit semble aller chez moi, Excel 2000 sous Win98SE.

Private Sub Workbook_Open()
On Error Resume Next
Set x = Sheets(Format(Date, "mmmm"))
If Err.Number = 0 Then Exit Sub
On Error GoTo 0
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
End With
End Sub

@+
FxM



Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub




Avatar
Philippe.R
Bonjour,
Avec une cellule nommée "fait" dans le classeur, qui contrôle si la copie a été faite :

Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Or [fait] = 1 Then
MsgBox [fait]
[fait] = 0
Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur," _
& " il récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
[fait] = 1
End If
End Sub
--
Amicales Salutations
XL 97 / 2000 / 2002
Retirer A_S_ pour répondre en privé.

"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans le message de news:
OY%
Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il récapitule le mois qui vient de
s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub



Avatar
FxM
A l'endroit où tu vois "mmmm", tu remplaces par "mm aa" ... et tu en
profites pour remettre ton horloge à la bonne heure. D4 ou Tclock
peuvent t'aider ;o)

@+
FxM



Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans le
message de news: OY%

Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub








Avatar
Phil de Paris
J'avais essayé mais ça ne marche pas ça ne fait par ex que "06 aa" !


"FxM" a écrit dans le message de news:
O%
A l'endroit où tu vois "mmmm", tu remplaces par "mm aa" ... et tu en
profites pour remettre ton horloge à la bonne heure. D4 ou Tclock peuvent
t'aider ;o)

@+
FxM



Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans
le message de news: OY%

Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub









Avatar
FxM
'scuses. Excel cause en angliche. Teste voir avec "mm yy"


J'avais essayé mais ça ne marche pas ça ne fait par ex que "06 aa" !


"FxM" a écrit dans le message de news:
O%

A l'endroit où tu vois "mmmm", tu remplaces par "mm aa" ... et tu en
profites pour remettre ton horloge à la bonne heure. D4 ou Tclock peuvent
t'aider ;o)

@+
FxM




Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans
le message de news: OY%


Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub












Avatar
AV
.Name = Format(Date, "mm yy")

AV
Avatar
Misange
fais gaffe pour toi entre temps tu as déjà fêté paques, la trinité, les
sans culottides, halloween, noel, l'an et la chandeleur et de 2005-2006
en plus ! un week end pour toi c'est comme un battement d'aile de papillon !

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta


on 30/03/2006 17:23:
ça marche !

merci pout tout

bonne fin de Week end prolongé

"FxM" a écrit dans le message de news:
%

'scuses. Excel cause en angliche. Teste voir avec "mm yy"



J'avais essayé mais ça ne marche pas ça ne fait par ex que "06 aa" !


"FxM" a écrit dans le message de news:
O%


A l'endroit où tu vois "mmmm", tu remplaces par "mm aa" ... et tu en
profites pour remettre ton horloge à la bonne heure. D4 ou Tclock peuvent
t'aider ;o)

@+
FxM





Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans
le message de news: OY%



Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub

















Avatar
Phil de Paris
Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans le
message de news: OY%
Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub



Avatar
Phil de Paris
ça marche !

merci pout tout

bonne fin de Week end prolongé

"FxM" a écrit dans le message de news:
%
'scuses. Excel cause en angliche. Teste voir avec "mm yy"


J'avais essayé mais ça ne marche pas ça ne fait par ex que "06 aa" !


"FxM" a écrit dans le message de news:
O%

A l'endroit où tu vois "mmmm", tu remplaces par "mm aa" ... et tu en
profites pour remettre ton horloge à la bonne heure. D4 ou Tclock peuvent
t'aider ;o)

@+
FxM




Merci !

une dernière amélioration :
plutôt que crééer des feuilles au format "mmmm"
comment rectifier pour avoir "mm" "aa" ?

merci


"Phil de Paris" <philippe.geai(supprimerceci)@laposte.net> a écrit dans
le message de news: OY%


Bonjour,

Comment modifier pour que la création de la feuille se fasse,
lors de la 1ère ouverture (par ex entre le 1 et le 5 du mois)
mais uniquement lors de cette première ouverture dans le mois.

ouverture fichier 2 mars: copier oui
ouverture fichir 4 mars: copier non

ouverture fichier 4 avril : copier oui
Merci de votre aide

----------
Private Sub Workbook_Open()
On Error Resume Next
x = Sheets(Format(Date, "mmmm").[A1])
If Err.Number = 0 Then Exit Sub
If Day(Date) < 5 Then
MsgBox "Bonjour, Un onglet à été créé en fin de classeur, il
récapitule le mois qui vient de s'écouler. Bonne journée"
Sheets("feuil1").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Format(Date, "mmmm")
.UsedRange.Value = .UsedRange.Value
Cells.Select
Selection.Locked = True
Selection.FormulaHidden = True
Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
Sheets("feuil1").Activate
Range("A1").Select
End With
End If
End Sub