- 帖子
- 2848
- 主題
- 10
- 精華
- 0
- 積分
- 2903
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2026-7-25
|
本帖最後由 准提部林 於 2016-1-20 22:50 編輯
給個參考方法∼∼∼
A1放502個字元文字串當測試,
Sub 截取字串()
Dim Arr
Arr = SPT_Str([A1], 20)
Arr = Split(Arr, Chr(10))
[H4].Resize(UBound(Arr) + 1) = Application.Transpose(Arr)
End Sub
'=============================
Function SPT_Str(xString$, xLength%)
Dim T$, TT$, TTT$, LN&
TT = xString
Do
T = Evaluate("MIDB(""" & Left(TT, 240) & """,1," & xLength & ")")
LN = Len(T)
If Right(T, 1) = " " And Mid(TT, LN) <> " " Then LN = LN - 1
TTT = TTT & Chr(10) & Left(TT, LN)
TT = Mid(TT, LN + 1)
Loop Until TT = ""
SPT_Str = Mid(TTT, 2)
End Function
Left(TT, 240)
_字串太長,MIDB 會發生錯誤,所以先截取前面240個字元!
If Right(T, 1) = " " And Mid(TT, LN) <> " " Then LN = LN - 1
_截取文字最後一字若為〔空白字元〕,判斷是否為全型字未完全取出的餘白,若是,則減取一字!
測試檔:
20160120-01(截取字串).rar (9.2 KB)
|
|