1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| Sub NouvelleFeuille()
Dim Nom As String
Dim Ws As Worksheet
Dim ligne As String
Dim MaPlage As Range, Cel As Range
Dim DernLigne As Long
Set MaPlage = Sheets("Note").Range("D5,N5,N7:N8,D34")
For Each Cel In MaPlage 'pour toutes les cellules de la plage
If Cel.Value = "" Then 'si elle est vide alors
'message à l'utilisateur
MsgBox "La cellule : " & Cel.Address & " n'est pas remplie."
'sortie de la procédure
Exit Sub
End If
Next
If MsgBox("Voulez-vous continuer la sauvegarde ?", vbQuestion + vbYesNo, "confirmation") = vbNo Then Exit Sub
Range("J9").Select
Application.ScreenUpdating = False
Set Ws = ActiveSheet
Nom = "Fiche n° " & Range("J1").Value
If FeuilleExiste(Nom) = True Then 'si feuille existe déjà alors message
If MsgBox("Ce n° de fiche existe déjà." & Chr(10) & "Enregistrement annulé.", vbInformation + vbOKOnly, "Information") = vbOK Then Exit Sub
Else
ligne = Sheets("Recherche").[B65000].End(xlUp).Row + 1
'--- Transfert Feuil ("Note") dans Feuil ("Recherche")
'Sheets("Recherche").Cells(ligne, 1) = Sheets("Note").Range("J1")
Sheets("Recherche").Cells(ligne, 2) = CDate(Sheets("Note").Range("N7"))
Sheets("Recherche").Cells(ligne, 3) = CDate(Sheets("Note").Range("N8"))
Sheets("Recherche").Cells(ligne, 4) = Sheets("Note").Range("D5")
Sheets("Recherche").Cells(ligne, 5) = Sheets("Note").Range("D6")
Sheets("Recherche").Cells(ligne, 6) = Sheets("Note").Range("N5")
Sheets("Recherche").Cells(ligne, 7) = Format(Sheets("Note").Range("N7"), "yyyy")
Sheets("Recherche").Cells(ligne, 8) = Now
Sheets("Note").Copy after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = Nom 'Nomme nouvelle feuill "Fiche n° + cellule J1
.DrawingObjects.Delete 'Supprime les objets (boutons)
.Visible = False 'Masque la feuille
End With
End If
NumIncrement
Ws.Select 'feuille "Note"
Range("D5:E5,J5:K7,N5:O6,N7:O8,B16:G30,I16:N30,D34:E35,J36:J37").ClearContents
'Sheets("Note").Range("J1") = Feuil2.[h2].Value & "-" & Format(Feuil2.[g2].Value, "0##") 'A supprimer si nouvelle macro incrémente
End Sub |