Bonjour à tous

J'ai un petit souci avec cette macro qui ne prend pas en compte la première partie de mon if :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Sub enregistrezsous()
 
 
Dim Outilstats As Workbook
Dim Nomfichier As String
Dim sh As Variant
Dim NameSht As String
Dim ShtExist As Boolean
'shtindex = Sheets(3)
NomSht1 = Sheets("Accueil").Range("Z7").Value
NomSht2 = Sheets("Accueil").Range("Z8").Value
Nomfichier = Sheets("Accueil").Range("Z6").Value
Set F = Sheets(3)
If F Is Nothing Then
Call MsgRec
'msgbox "Aucun rapport n'a été généré, l'enregistrement est impossible", vbExclamation
End
Else
Sheets(Array(NomSht1, NomSht2)).Copy
If Application.Dialogs(xlDialogSaveAs).Show(arg1:="c:\" & Nomfichier) = False Then Exit Sub
 
End If
End Sub
 
Sub MsgRec()
msgbox "Aucun rapport n'a été généré, l'enregistrement est impossible", vbExclamation
End
 
End Sub
La macro ne prend pas en compte le call MsgRec qui appel une msg box et arrete la macro.J'ai essayé beaucoup de variantes mais je n'ai rien trouvé pour résoudre le problème...

Si quelqu'un a une idée du problème, n'hésitez pas!

Merci beaucoup et bon week end !!

François