返回列表 上一主題 發帖

[發問] 關於儲存格 兩段的問題

[發問] 關於儲存格 兩段的問題

本帖最後由 mark15jill 於 2012-3-14 09:33 編輯

想請問 如果儲存格 有兩段文字(如附圖) 要怎用VBA判別 上、下行文字??
(只會合再一起 不會分開= =")

如附圖
attachimg]9978[/attachimg]

解圖.jpg (14.61 KB)

解圖.jpg

本帖最後由 Hsieh 於 2012-3-26 08:48 編輯

回復 16# c_c_lai

Application.Find這是VBA引用工作表函數
FIND函數的說明內清楚提到,當搜尋不到字元會傳回錯誤值
不要將VBA方法與工作表函數混淆
工作表函數FIND會傳回字元位於字串中的位置,會傳回一個數值
VBA的Find方法是找到符合條件的儲存格,會傳回儲存格物件
學海無涯_不恥下問

TOP

原來如此, 因為我是用 Application.Find("/", Sheet1.Cells(1, 1), 1) 的方式來處哩,
如果內容為 "海龍宮/海龍王"  就 OK, 但如果換成 "海龍宮 海龍王"  則為   #VALUE 了。
謝謝您的指導!

TOP

回復 14# c_c_lai
函數說明

TOP

請教一下假設字串中 Chr(10) 萬一不存在時,執行 Application.Find(Chr(10), Sheet1.Cells(1, 1), 1) 為何會出現 Error 呢?

TOP

了解~~
謝謝大大的教導..
因為有些資料 原始就已經合在一個儲存格
經轉換後 要分開

TOP

回復 3# mark15jill
如果是分隔符號確定是alt+enter
使用資料剖析/分隔符號/其他輸入alt+數字鍵10

play.gif
學海無涯_不恥下問

TOP

回復 10# hugh0620


    謝謝HUGH0620 大大

有試驗了  可以~ 謝謝(目前正將程式碼轉換成 想要的功能擴充區塊)...

TOP

回復 7# mark15jill

這樣就可以了~
chr(13)->chr(10)
因為我的資料是從資料庫導出來的~ 所以會有一個chr(13)的字元~
所以~ 你要自行去了解~ 你資料的內容~ 再去調整成適當的程式碼~

Sub ex()
Cells(1, 3) = Left(Sheet1.Cells(1, 1), Application.Find(Chr(10), Sheet1.Cells(1, 1), 1) - 1)                                                 '(減不減1看你資料內容,自行增減)
Cells(1, 4) = Mid(Sheet1.Cells(1, 1), Application.Find(Chr(10), Sheet1.Cells(1, 1), 1) + 1, Len(Sheet1.Cells(1, 1))) '(加不加1看你資料內容,自行增加)

End Sub
學習才能提升自己

TOP

回復 8# register313


試驗可以.. 感謝各位大大的協助..

顛倒是沒關係.. 後續再調整就好

之前是多筆資料要統合一起,現在是要分解出。
真是xxxxxxxxo   = ="

TOP

        靜思自在 : 生氣,就是拿別人的過錯來懲罰自己。
返回列表 上一主題