Feuille en double

P

Pierre Edouard

Guest
Bonjour à tous

Je ne connais pas l’écriture en VBA.

Par contre j’ai crée en frappant les commandes au clavier 38 macros d’architecture égale, qui ont pour but à chaque fois de créer une nouvelle page dans un classeur ;

Je voudrai modifier les 38 macros, ou faire en sorte qu’au lancement d’une macro, si la page existe déjà, le débogeur ne se déclenche pas, mais qu’une boite de dialogue apparaisse avec le message suivant : « supprimer d’abord l’édition antérieur » .

Ci dessous le texte d’une des 38 macros

Merci au forum de me dépanner.

________

Sub jazzadulteconfirmé()
'
' jazzadulteconfirmé Macro
' Macro enregistrée le 09/12/2003 par HP registered user
'

'
Sheets("Base de données ").Select
Sheets("Base de données ").Copy Before:=Sheets(7)
Sheets("Base de données (2)").Select
Sheets("Base de données (2)").Name = "Jazz adulte confirmé"
Range("A2").Select
ActiveSheet.Unprotect
Selection.AutoFilter
ActiveWindow.ScrollColumn = 43
ActiveWindow.ScrollColumn = 42
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 33
Selection.AutoFilter Field:=34, Criteria1:="x"
Rows("1:1").Select
Selection.EntireRow.Hidden = True
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
Columns("C:G").Select
Selection.EntireColumn.Hidden = True
ActiveWindow.SmallScroll ToRight:=2
Columns("M:BE").Select
Selection.EntireColumn.Hidden = True
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = "&""Arial,Gras italique""&12&A"
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "Page:&P/&N"
.RightFooter = "Rezé le:&D"
.LeftMargin = Application.InchesToPoints(0.787401575)
.RightMargin = Application.InchesToPoints(0.787401575)
.TopMargin = Application.InchesToPoints(0.984251969)
.BottomMargin = Application.InchesToPoints(0.984251969)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintPreview
End Sub
 
I

imanuelga

Guest
Bonjour,

Tu peux rajouter au début de ta macro :

On error goto erreur_du_à_feuille_déjà_existante

et à la fin ( avant end sub) :

Exit sub

erreur_du_à_feuille_déjà_existante:
msgbox"supprimer d’abord l’édition antérieur "

end sub
 

Discussions similaires

Statistiques des forums

Discussions
313 020
Messages
2 094 435
Membres
106 027
dernier inscrit
DonSparks