内容导航:


一、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

上面这段代码不是我原创的,是找来的。