Yep you need to make the tag BEFORE using it!
Maybe this
Sub SaveAsButton() Dim FD As FileDialog
Dim opres As Presentation
Dim rayNAME() As String
Dim lngVERSION As Long
Dim strFileName As String
Set opres = ActivePresentation
If opres.Path = "" Then
MsgBox "You must manually save this unsaved presentation!", vbCritical
Exit Sub
End If
If opres.Tags("NAME") = "" Then opres.Tags.Add "NAME", opres.Name
If opres.Tags("VERSION") = "" Then opres.Tags.Add "VERSION", "0"
rayNAME = Split(opres.Tags("NAME"), ".")
lngVERSION = CStr(opres.Tags("VERSION"))
lngVERSION = lngVERSION + 1
opres.Tags.Add "VERSION", CStr(lngVERSION)
strFileName = Format(Now, "yyyy-mm-dd") & "_" & rayNAME(0) & "V_" & Format(CStr(lngVERSION), "0#")
Set FD = Application.FileDialog(msoFileDialogSaveAs)
With FD
.Title = "Save as"
.InitialView = msoFileDialogViewList
.InitialFileName = strFileName '
.FilterIndex = 2
If .Show = -1 Then
strFileName = .SelectedItems(1)
ActivePresentation.saveAs (strFileName)
MsgBox "File was succesfully saved."
lngVERSION = lngVERSION + 1
opres.Tags.Add "VERSION", CStr(lngVERSION)
Else
MsgBox "Saving canceled."
lngVERSION = lngVERSION - 1
opres.Tags.Add "VERSION", CStr(lngVERSION)
End If
End With
Set FD = Nothing
End Sub