我列A中包含一年的工单。下面是列表中一些工单的图片:
目标:我想知道如何在VBA中创建一个从A列中的工作订单中提取年份的函数,并在B列中返回相应的年份,如下图所示:
我可以通过查看A列手动输入年份,但我想知道是否有可以自动执行此任务的功能。
答案 0 :(得分:2)
使用bellow比VBA宏最简单。
在单元格A1
中写下,并向下延伸到A1
自动处理的地址。
=MID(A1,FIND("_",A1,3)+1 ,4)
请注意,上面的3
是_
字符后的第一个位置,因此您可以根据需要更改它,或使用FIND("_",A1)+1
而不是3
以上如下:
=MID(A1,FIND("_",A1,FIND("_",A1)+1)+1 ,4)
或者像一个宏观:...
Sub ExtYear()
Dim i, sh As Long
sh = Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To sh
Cells(i, "B").Value = Split(Cells(i, "A").Value, "_")(UBound(Split(Cells(i, "A").Value, "_")))
Next i
End Sub