一、WPS如何将一段日期分成每一天的日期
假如数据在A列并从A1开始,在C1单元格输入公式=IFERROR(LEFT(INDEX($A1:$A1,SMALL(IF(MID($A1,FIND("-",$A1)+1,FIND("日",$A1)-1-FIND("-",$A1))-MID($A1,FIND("月",$A1)+1,FIND("-",$A1)-1-FIND("月",$A1))+1>=COLUMN($A:$Z),ROW($A$1:$A$1)),COLUMN(A$1))),FIND("月",INDEX($A1:$A1,SMALL(IF(MID($A1,FIND("-",$A1)+1,FIND("日",$A1)-1-FIND("-",$A1))-MID($A1,FIND("月",$A1)+1,FIND("-",$A1)-1-FIND("月",$A1))+1>=COLUMN($A:$Z),ROW($A$1:$A$1)),COLUMN(A$1)))))&MID($A1,FIND("月",$A1)+1,FIND("-",$A1)-1-FIND("月",$A1))+COLUMN(A$1)-1&"日","")
数组公式,需按Ctrl+Shift+Enter三键结束公式,使公式前后产生大括号{}后,下拉,再右拉公式到空白单元格出现止。 如图:
示例
二、WPS如何快速拆分
是不是要拆分的单元格都用红色(在Excel中的colorindex值是3)标识出来了?如果是的话,用vba自定义一个函数,就可以提取出红色部分了。
只要提取出红色部分,剩下的部分用substitute函数提取就行了。
自定义函数代码如下(怎么添加到vba模块,自行百度吧):
Function GetColText(Rng As Range)
Dim N&, Result$
Application.Volatile
Set Rng = Rng(1)
Result = ""
If Rng <> "" Then
For N = 1 To Len(Rng.Value)
If Rng.Characters(N, 1).Font.ColorIndex = 3 Then Result = Result & Mid(Rng.Value, N, 1)
Next N
End If
GetColText = Result
End Function
上面这段代码不是我原创的,是找来的。