前沿wos号是相同的,已经用颜色标记,后面被引论文wos号根据前面相同的合并到一起,中间用分号隔开,数据量很大,有没有简单方法?
答:编写了个自定义函数来完成。按Alt+F11组合键,打开vb编辑器。然后插入“模块”,将下面代码复制进去。
Function JOINIF(Rng1 As Range, Str, Rng2 As Range, Linkstr)使用方法:在C列后插入一列,假设图中数据有100行,那么在C2单元格插入公式:
=JOINIF($B$2:$B$100,B2,$C$4:$C$100,";"),往下复制公式,就得到你需要的结果。
请问,是这样吗?数据一共1387行,不过为什么一直显示公式,不出现数据呢?在vb编辑器上输入代码后,需要点击什么来执行一下吗?
应该写成:=JOINIF($B$2:$B$1387,B2,$C$2:$C$1387,";")
不出结果,原因是D列插入时默认选用C列文本格式,把格式改为常规。
它一直显示#NAME?,这是哪里不对呢?vb现在是这样的,不知道对不对。
不要把代码置于工作表模块中,要在菜单里点击插入,插入一个模块,然后放到这个模块里。
追问不用专门运行该程序,直接在单元格中写公式即可。现在你放对位置了。
追问您好,我已经成功实现,请问一下这具体用到了什么方法呢?谢谢!!!
实现方法就是利用自定义函数来实现。
技术手段就是体现在代码中,利用B列单元格的值在B整列匹配,把匹配到的值对应的C列的值串起来,然后输出显示。