从Word文件中search文本并显示相邻的单元格

使用VBA进行工作,我已经有了分析Word文件的代码,挑选出需要的方面并将其转换为Excel格式。

我们将任务分配给Word文件中的人员,文件和代码的设置方式可以识别谁负责任务,例如Joe 。 我们有很多员工,我希望能够让脚本search从列表中选取的任何名称,find名称所在的单元格,然后将数据显示在与其相邻的单元格中。

目前代码有很多人手动放置在那里循环,即如果Joe目前然后显示usernameJoe

我有用户名和名称分解在工作簿结构为:

 Name Username Joe A ajoe Jack B bjack John C cjohn ... ... 

当我的代码单独放置在循环中时工作:

 Joe responsible? If InStr(current_action.resp, "Joe") <> 0 Then ' assigning to online account current_action.resp = "ajoe" 

创造85个循环是一个漫长的过程,并在一个变化无常的工作场所太冗长。

在代码中,所取出的名称被称为current_action.resp

你应该使用一个数组并在其上循环:

 Sub test_Mugiwara_Luffy() Dim PersonS(), _ i As Long, _ NameS() As String ReDim PersonS(1 To 85, 1 To 2) PersonS(1, 1) = "Joe A" PersonS(2, 1) = "Jack B" PersonS(3, 1) = "John C" '.... For i = LBound(PersonS, 1) To UBound(PersonS, 1) If Len(PersonS(i, 1)) >= 5 And InStr(1, PersonS(i, 1), " ") Then NameS = Split(PersonS(i, 1), " ") PersonS(i, 2) = LCase(Left(NameS(UBound(NameS)), 1) & NameS(LBound(NameS))) Else End If If InStr(current_action.resp, PersonS(i, 1)) Then ' assigning to online account current_action.resp = PersonS(i, 2) Else End If Next i End Sub