View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.misc
Zement Zement is offline
external usenet poster
 
Posts: 4
Default Document Properties for Office 2007 Excel Templates

When creating Excel templates (xltx) for my company, I want the authors name
to be filled in automatically in the author document property. Unfortunately,
when you clear the author name in the template, this does not result in the
user name being filled in in the author property of the xlsx created from the
xltx.

Apparently on Vista it does work, but not on an XP system.

I asked Microsoft and the support desk told me this is default behavior that
can only be worked around using a macro in all templates (that then should be
xltm files, of course):

=============
Sub Auto_Open()
' -----------------------------------------------------------------
' Sub: Auto_Open()
' Arguments: none
' Goal: Macro runs whenever we open our xltm template or create a new
' workbook based on our xltm.
' If we don't open the xltm directly in Excel we check if our
' author property is empty. If yes we set the user name as new
author
' and reset the Saved state.
' -----------------------------------------------------------------

Dim bSaved As Boolean
bSaved = ActiveWorkbook.Saved

If InStr(1, ActiveWorkbook.FullName, ".xltm") = 0 And _
ActiveWorkbook.BuiltinDocumentProperties("Author") = "" Then
ActiveWorkbook.BuiltinDocumentProperties("Author") =
Application.UserName
ActiveWorkbook.Saved = bSaved
End If
End Sub

==============

However, were I to use this solution, users would get a pop-up upon saving
stating that there will be functionality loss when saving to the default
format xlsx, which is of course correct €“ they then would have to choose
whether they want the macro discarded in the xlsx or choose to save as xlsm.
This is not very elegant.

We are now considering simply to display the document panel by default, but
then users will still have to fill in their names. And were back to square
one.

Is there a workaround for what youre doing on Vista when running XP?
Because that would really help!

Thanks in advance!!