Nick,

I tried this already, but it did not work. I guess the problem is that I use
the save as button. With the save button everything works fine.

Bart V

"NickHK" wrote:

> Bart,
> Assuming everything is successful, the file is saved through your last line
> of code.
> However, you are in the _BeforeSave event and you have not cancelled the
> reason that event was called.
> So, add a Cancel=True
>
> Also, do you all the SaveAsUI checks at all ?
>
> NickHK
>
> "Bart V" <BartV@discussions.microsoft.com> wrote in message
> news:77A25BF5-8193-4275-9D1E-209917DBB8D6@microsoft.com...
> > I am using beforesaveas to prompt the save as screen with a pre-defined

> name.
> > When using the save button everything seems to be functioning ok as I am
> > using Cancel = True. -When using the save as function I get the

> pre-defined
> > name, however after confirming, using the save button, the screen pops up

> a
> > second time. As this file needs to be sent to end-users I don't want this

> to
> > happen. What can be done to avoid this? Find below the subroutine.
> >
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
> > Cancel As Boolean)
> > NameToSave = Sheet15.Cells(5, 2) & " - CDP - " & Sheet15.Cells(3, 2)

> &
> > " (v" & Year(Date) & Month(Date) & Day(Date) & ")"
> > If Sheet15.Cells(3, 2) = "" Then
> > Answer = MsgBox("Before being able to save this file you need to
> > select a year in the parameter sheet.", Buttons:=48)
> > Cancel = True
> > Sheet15.Activate
> > Exit Sub
> > End If
> >
> > If Sheet15.Cells(5, 2) = "" Then
> > Answer = MsgBox("Before being able to save this file you need to
> > select a country in the parameter sheet.", Buttons:=48)
> > Cancel = True
> > Sheet15.Activate
> > Exit Sub
> > End If
> >
> > If SaveAsUI = False Then
> > If MsgBox("Do you really want to save this Workbook? ", vbYesNo) =
> > vbNo Then
> > Cancel = True
> > Exit Sub
> > Else
> > Application.Dialogs(xlDialogSaveAs).Show (NameToSave)
> > Cancel = True
> > Exit Sub
> > End If
> > Else
> > Application.Dialogs(xlDialogSaveAs).Show (NameToSave)
> > End If
> >
> > End Sub

>
>
>