Sub AjouterFeuille()
Dim Sh As Worksheet
Dim Reponse As String
Dim LeString As String
LeString = ":\/?*[]"
deb:
Reponse = InputBox("NOM de votre" _
+ vbCrLf + "NOUVELLE FEUILLE dans le CLASSEUR?", _
"NOM FEUILLE ??? ", MonNom)
If Reponse = "" Then Exit Sub
'Vérifier que le nom n'existe pas déja
For Each Sh In Sheets
If UCase(Reponse) = UCase(Sh.Name) Then
If MsgBox( _
"NOM de FEUILLE DEJA EXISTANT," _
+ vbCrLf + vbCrLf + _
"LE REMPLACER ??.", vbYesNo + vbOKOnly, _
"NOM DEJA EXISTANT") = vbYes Then
Application.DisplayAlerts = False
Worksheets(Reponse).Delete
Application.DisplayAlerts = True
Reponse = ""
Sheets("Menu").Range("A65536").End(xlUp).Value = ""
GoTo deb
Else
Exit Sub
End If
End If
Next Sh
'Vérifier que le nombre de caracteres du nom ne dépassent 31...
If Len(Reponse) > 31 Then
MsgBox "LE NOM EST TROP LONG !!!! (" & _
Len(Reponse) & ") IL DEPASSE" _
+ vbCrLf + " 31 CARACTERES"
GoTo deb
End If
'Vérifier l'emploi de caracteres interdits...dans le nom
For a = 1 To 7
If InStr(1, Reponse, Mid(LeString, a, 1), vbTextCompare) > 0 Then
MsgBox "CE (CES) CARACTERES " & _
LeString & " NE SONT PAS AUTORISE(S)" _
+ vbCrLf + "DANS LE NOM D'UNE FEUILLE", _
vbCritical + vbOKOnly, "CARACTERE INTERDITS !!!!!!!"
GoTo deb
End If
Next a
Set Sh = Worksheets.Add(after:=Worksheets(Worksheets.Count))
Sh.Name = Reponse
'mise en page VBA avec l'objet PageSetup
ActiveSheet.DisplayPageBreaks = False
With ActiveSheet.PageSetup
.LeftHeader = "" 'AUCUN ENTETE DE PAGE A GAUCHE
.CenterHeader = "" 'NI AU CENTRE
.RightHeader = "" 'NI A DROITE
.LeftMargin = Application.InchesToPoints(0.4) 'MARGE GAUCHE = 1 Cm
.RightMargin = Application.InchesToPoints(0.4) 'MARGE DROITE = 1 Cm
.TopMargin = Application.InchesToPoints(0.4) 'MARGE HAUT = 1 Cm
.BottomMargin = Application.InchesToPoints(0.4) 'MARGE BAS = 1 Cm
.HeaderMargin = Application.InchesToPoints(0.4) 'MARGE ENTETEPAGE = 1 Cm
.FooterMargin = Application.InchesToPoints(0.4) 'MARGE PIEDPAGE = 1 Cm
.PrintHeadings = False 'ENTETE FEUIL & COL NON IMPRIMES
.PrintGridlines = False 'QUADRILLAGE des CELS NON IMPRIMES
.PrintComments = xlPrintNoComments 'PAS IMP COMMENTAIRES
.CenterHorizontally = False 'PAS DE CENTRAGE DE LA PAGE H
.CenterVertically = False 'PAS DE CENTRAGE DE LA PAGE V
.Orientation = 1 '1=PORTRAIT,2=PAYSAGE
.Draft = False 'IMPRESSION = NORMAL
.PaperSize = xlPaperA4 'chez moi j'ai un bug avec cette ligne ???
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
Sheets("Menu").Range("A65536").End(xlUp).Offset(1, 0).Value = Reponse
Sheets("Menu").Activate
End Sub