We've developed a PowerPoint VSTO add-in. To work with multiple Presentations at the same time we use a unique GUID for each presentation and store it in CustomDocumentProperties as mentioned here.
With Office 365 Microsoft has introduced a new feature in PowerPoint called design ideas. (It is the last item on the Design tab) When we use this add-in, interestingly the CustomDocuementProperties stored in the presentation are removed.
It is easily reproducible with following VBA code. First, run the AddCustomProperty method and verify it with GetCustomProperty, then use the Design Ideas on a slide. After this when GetCustomProperty is called an exception is thrown.
Public Sub AddCustomProperty()
On Error Resume Next
ActivePresentation.CustomDocumentProperties("PresentationID").Value = "bb999da6f94c4692b31106994636d962"
If Err.Number > 0 Then
ActivePresentation.CustomDocumentProperties.Add _
Name:="PresentationID", _
LinkToContent:=False, _
Type:=MsoDocProperties.msoPropertyTypeString, _
Value:="bb999da6f94c4692b31106994636d962"
End If
End Sub
Sub GetCustomProperty()
MsgBox ActivePresentation.CustomDocumentProperties("PresentationID")
End Sub
I've found a solution for this is to use Presentation Tags instead of CustomDocumentProperties but the current codebase heavily relies on the later that's why I'm looking for other possibly easier alternatives.
Also, Can we somehow disable this feature with our add-in?