Save .vsd as .vsdx breaks Last Edit Date in Visio 2016

Started by Anondood, April 14, 2020, 08:48:38 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


If I add a Last Edit Date field to an existing .vsd drawing it works as expected.

If I then save that drawing as a .vsdx, Last Edit Date shows the current time when the file is opened.

This only happens with pre-existing .vsd files.
I tried saving a 2016 file with a Last Edit Date field as .vsd (worked fine) and then saved as .vsdx (still worked fine).

I have hundreds of files that will eventually need to be updated to .vsdx.

Help! :'(


 Where is a bug in this issue?


last edit date needs to be a discrete / manual value....not a function like NOW().
When opening a file, that function wil update to current time.

All MS products work that way

one way you could do this in shapesheet is = NOW()
actions.updateLED = setf(getref(actions.updateLED.checked),if(actions.updateLED.checked,0,1))
actions.updateLED.tag ="update last edit date"

user.LED = if (actions.updateLED.checked,, NA)

use the user.LED as the cell for the field to be displayed.

right click the "update last edit date"....will see checked and value update.
repeat and deselect to turn off (otherwise the same problem again).


With my original .vsd file, after I add the Last Edit Date field it always shows the last time it was edited even if I open and close it 10 times on different days it always shows the last time it was EDITED. and not the current time.

The same behavior happens when I put a Last Edit Date field in a .vsdx.
This is all "as expected".

But if I save a .vsd as a .vsdx, the Last Edit Date field then ALWAYS shows the time the file was OPENED, even if the last edit was days ago.

Paul Herber

What field name are you using?
Have you tried =DOCLASTSAVE() instead of =DOCLASTEDIT() ?
I suspect Visio is writing something in the document when it is opened.

Electronic and Electrical engineering, business and software stencils for Visio -


From the Menu Bar:

Insert>>Field>>Date/Time>>Last Edit Date/Time


Quote from: Anondood on April 15, 2020, 02:13:51 PM
From the Menu Bar:

Insert>>Field>>Date/Time>>Last Edit Date/Time


And how would I put that field in my drawing?

Macros, VBA, etc. are blocked in my environment.


in shapesheet, where ever the cell you are using in the field insertion....put that command

for example
insert==>field ==>cells ==>user.mydate
user.mydate = DOCLASTEDIT()

if you don't know some google
to open, in advanced options on file panel....set enable developer mode, save.....rt click shape.


When I look at the shapesheet for the .vsdx that DOESN'T work, it is already set to =DOCLASTEDIT().
The shapesheet for the original .vsd with Last Edit Date inserted is identical.

I still need to know why:
original .vsd with Last Edit Date works
original .vsdx with Last Edit Date works
.vsd converted from .vsdx works

ONLY original.vsd converted to .vsdx doesn't work


Strange in this thread mentioned another issue: dont updated value of FILENAME function.


I am actually adding a FILENAME field also, but it seems to work fine after the conversion.


just a guess, but the conversion probably saves the new file and thus updated.   I think you really need a trigger to prevent update until you want it.  Otherwise, every time you edit, that field will get updated


I WANT the field to get updated every time I edit.
I DON'T want the field to update every time I view it.

Seems simple enough, and it works as expected on everything EXCEPT converted files.


does a file after conversion behave correctly on the 2nd 3rd 4th time you edit?
if true, reinforces the idea conversion is about creating a new file...thus updated field