Excel需要将子string值拉到variables

我是一名没有VBA知识或经验的Oracle程序员。 我被要求修改一些Excelmacros,这些macros是为了从我们的薪酬服务提供商处得到的报告而编写的,以便查看和search一些不同的场景。

薪酬提供者改变了报告的布局,所以我需要相应地改变macros。

旧报告为员工在每一行都有会计代码。 新报告按照会计代码对员工进行分组,其中列出的行数在下面三行中列出的行数不等,员工分配给该会计代码。

会计代码由斜线字符分隔,所以如下所示:

code1/code2/code3/code4/code5 code6/code7/code8/code9/ code10/code11/code12 EmployeeID Name (Last Name, First Name) Pos# EarnCode Earnings N1234567 Messi, Leonardo 09876 LT1 $ 3,185.55 N2345678 Iniesta, Andreas 08765 REG $ 1,980.10 N3456789 Hernandez, Xavier 07654 REG $ 2,027.80 code1/code2/code3/code4/code5 code6/code7/code8/code9/ code10/code11/code12 EmployeeID Name (Last Name, First Name) Pos# EarnCode Earnings N4567890 Hazard, Eden 06543 REG $ 2,187.15 N5678901 Fabregas, Cesc 05432 LT1 $ 1,875.60 N6789012 Terry, John, 04321 NBO $ 1,290.50 N7890123 Thibaut, Courtois 03219 REG $ 1,365.25 

我需要将code4和code7分别移动到每个员工行下面的列中,然后在会计代码更改为合适的员工时明显更改variables值。 如果是SQL,我将使用instr来查找第三个斜杠的位置,然后采用下面的五个字符:

 substr(instr(ACCT_CODES, '/', 3), 5) 

SQL的instr函数可以计算有问题的项目的出现次数,但是在VBA中,它只能find第一个位置(从我能find的位置)。我已经尝试了VBA函数Split,但还没有使它工作。

我怎样才能得到我需要的东西,并将其分配给一个variables,以便在下面的行上使用?

你可以使用split来将一个string拆分成一个数组,Split(ACCT_CODES,“/”)(6)会给你第7个和(3)会给你第4个