Mes feuilles sont nommées de 1 à 52 (numéro de semaine)
Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click()
Cells.Select
Sheets("modèle").Select
Sheets("modèle").Copy After:=Sheets(Worksheets.Count)
ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau
Nom", Title:="Nom de la nouvelle feuille", Type:=2)
ActiveSheet.Range("a1").Value = ActiveSheet.Name
End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la
semaine n-10.
JE n'arrive pas à remplacer le 23 par une formule permettant de
calculer :
(feuille active - 10)
par exemple je crée la semaine 35 et les graphiques de la semaine 25
sont supprimé.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
pmo
Bonjour,
Faites une copie de votre classeur et essayez la macro ci-dessous. La macro va, dans un premier temps, rechercher la semaine la plus élevée puis sélectionner la feuille "semaine la plus élevée - 10" et y détruire TOUS les graphiques incorporés.
Salutations.
PMO
'************************************* Sub Supprime_Graph() Dim A$ Dim S As Worksheet Dim LastWeek& Dim C As ChartObject Application.ScreenUpdating = False '---- Détermination de la semaine la plus élevée ---- For Each S In Worksheets If IsNumeric(S.Name) Then If CLng(S.Name) > LastWeek& Then LastWeek& = CLng(S.Name) End If End If Next S '---- Activation de la feuille "n-10" ---- A$ = ActiveSheet.Name On Error GoTo neant Sheets(CStr(LastWeek - 10)).Activate On Error GoTo 0 '---- Destruction des graphiques incorporés ---- For Each C In ActiveSheet.ChartObjects C.Delete Next C '---- Activation de la feuille d'origine ---- Sheets(A$).Activate Application.ScreenUpdating = True Exit Sub neant: MsgBox prompt:="La feuille ''" & LastWeek - 10 & _ "'' n'existe pas.", _ Buttons:=vbOKOnly Application.ScreenUpdating = True End Sub '*************************************
-----Message d'origine----- Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine) Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click() Cells.Select Sheets("modèle").Select Sheets("modèle").Copy After:=Sheets(Worksheets.Count) ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau
Nom", Title:="Nom de la nouvelle feuille", Type:=2) ActiveSheet.Range("a1").Value = ActiveSheet.Name End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la
JE n'arrive pas à remplacer le 23 par une formule permettant de
calculer : (feuille active - 10) par exemple je crée la semaine 35 et les graphiques de la semaine 25
sont supprimé.
Merci d'avance Bonne journée .
Bonjour,
Faites une copie de votre classeur et essayez
la macro ci-dessous.
La macro va, dans un premier temps, rechercher
la semaine la plus élevée puis sélectionner la
feuille "semaine la plus élevée - 10" et y détruire
TOUS les graphiques incorporés.
Salutations.
PMO
'*************************************
Sub Supprime_Graph()
Dim A$
Dim S As Worksheet
Dim LastWeek&
Dim C As ChartObject
Application.ScreenUpdating = False
'---- Détermination de la semaine la plus élevée ----
For Each S In Worksheets
If IsNumeric(S.Name) Then
If CLng(S.Name) > LastWeek& Then
LastWeek& = CLng(S.Name)
End If
End If
Next S
'---- Activation de la feuille "n-10" ----
A$ = ActiveSheet.Name
On Error GoTo neant
Sheets(CStr(LastWeek - 10)).Activate
On Error GoTo 0
'---- Destruction des graphiques incorporés ----
For Each C In ActiveSheet.ChartObjects
C.Delete
Next C
'---- Activation de la feuille d'origine ----
Sheets(A$).Activate
Application.ScreenUpdating = True
Exit Sub
neant:
MsgBox prompt:="La feuille ''" & LastWeek - 10 & _
"'' n'existe pas.", _
Buttons:=vbOKOnly
Application.ScreenUpdating = True
End Sub
'*************************************
-----Message d'origine-----
Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine)
Chaque semaine je crée une nouvelle avec la formule
suivante :
Private Sub CommandButton1_Click()
Cells.Select
Sheets("modèle").Select
Sheets("modèle").Copy After:=Sheets(Worksheets.Count)
ActiveSheet.Name = Application.InputBox(prompt:="Entrez
un Nouveau
Nom", Title:="Nom de la nouvelle feuille", Type:=2)
ActiveSheet.Range("a1").Value = ActiveSheet.Name
End Sub
Je voudrais ajouter une fonction qui supprimerait les
graphiques de la
Faites une copie de votre classeur et essayez la macro ci-dessous. La macro va, dans un premier temps, rechercher la semaine la plus élevée puis sélectionner la feuille "semaine la plus élevée - 10" et y détruire TOUS les graphiques incorporés.
Salutations.
PMO
'************************************* Sub Supprime_Graph() Dim A$ Dim S As Worksheet Dim LastWeek& Dim C As ChartObject Application.ScreenUpdating = False '---- Détermination de la semaine la plus élevée ---- For Each S In Worksheets If IsNumeric(S.Name) Then If CLng(S.Name) > LastWeek& Then LastWeek& = CLng(S.Name) End If End If Next S '---- Activation de la feuille "n-10" ---- A$ = ActiveSheet.Name On Error GoTo neant Sheets(CStr(LastWeek - 10)).Activate On Error GoTo 0 '---- Destruction des graphiques incorporés ---- For Each C In ActiveSheet.ChartObjects C.Delete Next C '---- Activation de la feuille d'origine ---- Sheets(A$).Activate Application.ScreenUpdating = True Exit Sub neant: MsgBox prompt:="La feuille ''" & LastWeek - 10 & _ "'' n'existe pas.", _ Buttons:=vbOKOnly Application.ScreenUpdating = True End Sub '*************************************
-----Message d'origine----- Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine) Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click() Cells.Select Sheets("modèle").Select Sheets("modèle").Copy After:=Sheets(Worksheets.Count) ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau
Nom", Title:="Nom de la nouvelle feuille", Type:=2) ActiveSheet.Range("a1").Value = ActiveSheet.Name End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la
JE n'arrive pas à remplacer le 23 par une formule permettant de
calculer : (feuille active - 10) par exemple je crée la semaine 35 et les graphiques de la semaine 25
sont supprimé.
Merci d'avance Bonne journée .
AV
A ajouter en fin du code de création de la nouvelle feuille :
On Error Resume Next Sheets(ActiveSheet.Index - 10).DrawingObjects.Delete
AV
"gaylord" a écrit dans le message news:
Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine) Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click() Cells.Select Sheets("modèle").Select Sheets("modèle").Copy After:=Sheets(Worksheets.Count) ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau Nom", Title:="Nom de la nouvelle feuille", Type:=2) ActiveSheet.Range("a1").Value = ActiveSheet.Name End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la semaine n-10.
JE n'arrive pas à remplacer le 23 par une formule permettant de calculer : (feuille active - 10) par exemple je crée la semaine 35 et les graphiques de la semaine 25 sont supprimé.
Merci d'avance Bonne journée
A ajouter en fin du code de création de la nouvelle feuille :
On Error Resume Next
Sheets(ActiveSheet.Index - 10).DrawingObjects.Delete
AV
"gaylord" <gaylord@ifrance.com> a écrit dans le message news:
5a85066b.0309010317.57050939@posting.google.com...
Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine)
Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click()
Cells.Select
Sheets("modèle").Select
Sheets("modèle").Copy After:=Sheets(Worksheets.Count)
ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau
Nom", Title:="Nom de la nouvelle feuille", Type:=2)
ActiveSheet.Range("a1").Value = ActiveSheet.Name
End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la
semaine n-10.
JE n'arrive pas à remplacer le 23 par une formule permettant de
calculer :
(feuille active - 10)
par exemple je crée la semaine 35 et les graphiques de la semaine 25
sont supprimé.
A ajouter en fin du code de création de la nouvelle feuille :
On Error Resume Next Sheets(ActiveSheet.Index - 10).DrawingObjects.Delete
AV
"gaylord" a écrit dans le message news:
Bonjour
Mes feuilles sont nommées de 1 à 52 (numéro de semaine) Chaque semaine je crée une nouvelle avec la formule suivante :
Private Sub CommandButton1_Click() Cells.Select Sheets("modèle").Select Sheets("modèle").Copy After:=Sheets(Worksheets.Count) ActiveSheet.Name = Application.InputBox(prompt:="Entrez un Nouveau Nom", Title:="Nom de la nouvelle feuille", Type:=2) ActiveSheet.Range("a1").Value = ActiveSheet.Name End Sub
Je voudrais ajouter une fonction qui supprimerait les graphiques de la semaine n-10.
JE n'arrive pas à remplacer le 23 par une formule permettant de calculer : (feuille active - 10) par exemple je crée la semaine 35 et les graphiques de la semaine 25 sont supprimé.