我有一个宏Word文件,它控制一个非宏word文件(这允许在非宏word文件中进行协作,注意宏Word文件不允许同时编辑)。
宏Word文件有一个treeview,并使用来自非宏word文件的数据填充它,当非宏word文件光标被更改时,treeview扩展。宏还具有一些向前/向后按钮,用于导航非宏word文件。
我用app_WindowSelectionChange获得光标的位置;但是,即使我在第三个word文档中单击,这个子程序也会激活。在使用这个宏时,人们经常会打开和引用3-10字的文档.我需要得到文件名称,鼠标点击输入到这个app_WindowSelectionChange子,这样我就可以绕过子,如果用户有第三个无关的文字文档,他们正在引用。
理想情况下,我只添加这样的东西,但不起作用
If currentDocName <> docName Then Exit Sub以下是选择更改代码
Sub app_WindowSelectionChange(ByVal Sel As Selection)
On Error Resume Next
'If currentDocName <> docName Then Exit Sub
If backState = False And forwardState = False Then
Dim currentparagraph As Integer
currentparagraph = Documents(docName).Range(0, Selection.Paragraphs(1).Range.End).Paragraphs.Count
If navColl.Count = 0 Then navColl.Add currentparagraph
If navColl.Count > 0 Then
If navColl(navColl.Count) <> currentparagraph Then
navColl.Add currentparagraph
navCollpos = navColl.Count
End If
End If
End If
End Sub这里是用于协作的非宏word文档旁边的宏word用户表单的图像:。

发布于 2022-03-16 17:24:02
可以使用Selection.Range.Parent.Name检索所选文档的名称。
https://stackoverflow.com/questions/71499776
复制相似问题