林丽华
同事前来求助,A列数据都是类似于a、b、c这样的数据,其中的a、b、c都有若干个,现在要求在B列对应形成a1、a2、a3、b1、b2、b3、c1、c2、c3…,也就是说要求实现数据序号的自动递进。除了手工录入之外,有没有简单一些的方法呢?
利用VBA代码可以轻松实现上述需求,按下“Alt+F11”组合键,打开Microsoft Visual Basic for Applications编辑器窗口,依次选择“插入→模块”,在右侧窗格插入一个空白模块,手工输入或粘贴如下代码(相关代码可关注电脑迷微信回复“201507vba1”获得,如图1)。
代码检查无误之后,依次选择“文件→关闭并返回到Microsoft Excel”命令,返回Excel主界面,按下“Alt+F8”组合键,打开“宏”对话框,选择并运行宏,很快就可以获得图2所示的结果。
如果觉得VBA代码过于麻烦,也可以在B2单元格输入公式“=A2&COUNTIF(A$2:A2,A2)”,这里的COUNTIF函数用来计算指定的单元格区域中满足条件的单元格个数,“&”表示将前后的字符连接起来,向下拖拽填充柄,同样可以获得自动递进的序号。