您好我需要根据.Net应用程序更改的值触发vba中的宏。例如,我有以下模板 Template populated by .Net application
我有以下代码,当它的值被填充时需要在Cell(3,1)上做子串。
Sub Format()
Dim Str1 As String
Dim Str2 As String
tbl = ActiveDocument.Tables(1)
Str1 = tbl.Cell(3, 1).Range.Text
Str2 = Split(Str1, " ")(0)
tbl.Cell(3, 1).Range.Text = Str2
End Sub
问题是,当Cell(1,3)中的值从<>更改时,需要触发此问题。 “这是标题三”
答案 0 :(得分:0)
除非您设置Windows API Keyboard挂钩以监控用户正在执行的所有操作,否则在用户在Word中进行编辑时不会触发任何事件。
当用户进入/离开表格单元格时,将触发Word.Application对象的WindowSelectionChange事件。您可以监视它,检查是否通过输入相关单元格触发它,如果是这种情况设置一个布尔值。当事件显示它离开单元格时,重置布尔值并检查当前单元格内容。
您只需要注意,监视此事件可能会影响Word应用程序的速度/效率。