Re : #VALEUR! dans les formules
Re,
Je poste mon code qui sert de remise à zéro afin que si quelqu'un qui a suivi le fil (notamment JC qui connaît bien le VBA) remarque quelque chose qui pourrait clocher dans le code.
Ce code a été réalisé à 90% avec l'enregistreur de macro et le reste par mes soins mais n'étant pas très féru en VBA, j'ai peut-être commis une erreur.
Sub RAZPerms()
'
' RAZPerms Macro
' Macro enregistrée le 20/02/2007 par FUNA
'
Dim intReturn As Integer
intReturn = MsgBox("Attention, cette procédure effacera toutes les permissions saisies " _
& " dans ce document. Une sauvegarde va vous être proposée au cours de la procédure.", vbQuestion + vbOKCancel)
If intReturn = 1 Then
Application.Run "'Matrice BDD BCL.xls'!saisiepermissions"
Application.Run "'Matrice BDD BCL.xls'!DeprotectionToutesLesFeuillesMDP"
Application.ScreenUpdating = False
Cells.Select
Range("B1").Activate
Selection.Copy
Sheets("PERMS").Select
Sheets.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "Sauvegarde temporaire"
Cells.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Workbooks.Add
Cells.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Sheets(Array("Feuil2", "Feuil3")).Select
Sheets("Feuil3").Activate
ActiveWindow.SelectedSheets.Delete
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "Permissions"
Range("D3").Select
nom = "Permissions" & " " & Year(Range("B1"))
Application.Dialogs(xlDialogSaveAs).Show nom
ActiveWindow.Close
Sheets("PERMS").Select
Range("Q3:BO150").Select
Selection.SpecialCells(xlCellTypeConstants, 23).Select
Selection.ClearContents
Sheets("Sauvegarde temporaire").Select
Range("BP3:BP150").Select
Selection.Copy
Sheets("PERMS").Select
Range("H3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Sauvegarde temporaire").Select
Range("BQ3:BR150").Select
Selection.Copy
Sheets("PERMS").Select
Range("Q3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Sauvegarde temporaire").Select
Application.CutCopyMode = False
Range("BT3:BU150").Select
Selection.Copy
Sheets("PERMS").Select
Range("T3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Sauvegarde temporaire").Select
Application.CutCopyMode = False
Range("BW3:BX150").Select
Selection.Copy
Sheets("PERMS").Select
Range("W3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Sauvegarde temporaire").Select
Range("BZ3:CA150").Select
Selection.Copy
Sheets("PERMS").Select
Range("Z3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Sauvegarde temporaire").Select
Range("CC3:CD150").Select
Selection.Copy
Sheets("PERMS").Select
Range("AC3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("CW3:CZ150").Select
Selection.Copy
Range("CV3").Select
ActiveSheet.PasteSpecial Format:=3, Link:=1, DisplayAsIcon:=False, _
IconFileName:=False
Range("CZ3:CZ150").Select
Selection.ClearContents
Range("DG3
G150").Select
Selection.ClearContents
Range("DI3
J150").Select
Selection.ClearContents
Range("DN3
O150").Select
Selection.ClearContents
Range("DS3
T150").Select
Selection.ClearContents
Range("I3:K150").Select
Selection.ClearContents
Range("B1").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("D3").Select
Sheets("Sauvegarde temporaire").Select
ActiveWindow.SelectedSheets.Delete
Application.ScreenUpdating = True
Application.Run "'Matrice BDD BCL.xls'!ProtectionToutesLesFeuillesMDP"
Else
If intReturn = 2 Then Exit Sub
End If
End Sub
Bon après-midi à tous.