✔ 最佳答案
發問的表達能力有問題
原表資料有多少組, 及在那裡?
在那裡顯示答案?
要求的答案是什麼?
2009-09-01 23:21:23 補充:
請試以下公式:
B1 =LEFT(A1,FIND(CHAR(10),A1)-1)
C1 =TRIM(MID(SUBSTITUTE(A1,CHAR(10),REPT(" ",999),LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(10),))-1),999,99))
將B1:C1下拉
參考檔案:
http://www.FunP.Net/654449
2009-09-02 10:27:19 補充:
C1 公式, 先用兩個Len函數找出隔行符的總數, 如5行, 即有4個隔行符CHAR(10), 再減一, 即3
再用其他函數擷取第3個隔行符開始至尾的內容, 故永遠都是最後兩行
2009-09-02 23:03:31 補充:
已將意見區C1的公式優化, 稍為簡短
假設A欄是地址, 每格多行
B1=LEFT(A1,FIND(CHAR(10),A1)-1)
C1=SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(A1,CHAR(10),REPT(" ",999)),2000)),REPT(" ",999)," ")
將B1:C1 下拉
如用vba更加高效, 就算A欄有過千組地址, 亦可秒內解決(按一下制便可執行巨集), 又無需做選擇性貼上 值, 以下是我寫的vba代碼
Sub splitx()
Dim ar()
r = [a65536].End(xlUp).Row
ReDim Preserve ar(1 To r, 1 To 2)
For i = 1 To r
ii = Replace(Cells(i, 1), Chr(10), Space(999))
ar(i, 1) = Trim(Left(ii, 999))
ar(i, 2) = Replace(Trim(Right(ii, 2000)), Space(999), " ")
Next
[b1].Resize(r, 2) = ar
End Sub
參考檔案:
http://www.funp.net/754577