Oh yeah, the DBMOD in EndSave does the trick! Thanks again, Wouter.
I declared varTestSaved and used this line:
varTestSaved = ThisDrawing.GetVariable("DBMOD")
From there I can replace the drawing number into the picklist.
I've got an instance where I think the FSO code will come in very useful, though. It might work better than my current, rather long-winded method.
Just for the sake of completeness, I need to answer Norman's contribution.
1) The drawing is removed from the picklist the moment one draftsman selects it, so it can't be selected by another draftsman. I agree, these guys are pretty allergic to a "Save" button, so I dare not risk leaving a number as "available" until the user eventually gets around to saving it. Which is why I need to only replace the number if the user decides not to save. (This, generally, happens by accidentally closing the program without saving.)
2) You're right, if I could use just one spreadsheet, and indicate somewhere on it that the drawing is in use, it would be easier. Unfortunately the spreadsheet in use is a Drawing register, and these things get updated and revved up at times. So I need to also update columns like "Drawn By" on new revisions of the Drawing Register, which implies I have to have a record of the used drawings to be able to update new revs and keep the integrity of which numbers have been used, regardless of which Drawing register is selected. It is also rather likely that, if there are a few revisions of the Drawing register in the folder, someone will inevitably select an older revision.
Oh boy, the effort one has to go to in order to protect users from themselves.
ML, I would share my code, but later will be better, it is currently riddled with commented-out text, msgbox'es to myself for debugging, and not exactly well documented.
Thanks again, all!