看板 Office 關於我們 聯絡資訊
軟體: Excel VBA 版本: 2010 各位先進大家好 在下是 VBA 新手 有批好幾頁 每頁接近萬列的資料要整理 每列約有 50~100 個儲存格 資料大致如下 A B C | D E F G H I J K L M | 1 [7] (5) 1 | [3] (4) 13 [2] (2) 7 40 [7] (5) 1 | 2 [2] (4) 9 | [9] (6) 4 [2] (4) 8 5 16 9 | 3 [6] (3) 20 | [6] (5) 1 (8) 3 2 1 (3) 29 20 | 在下希望可以在 A 欄:找出同列中最後筆包含 "[" 的文字 B 欄:找出同列中最後筆包含 "(" 的文字 C 欄:找出同列中最後筆數字 請問該如何用 VBA Function 處理呢? 麻煩各為先進了 感激不盡! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.67.5.101 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1504430247.A.5A6.html
soyoso: 迴圈於範圍,instr判斷儲存格內包含"["或"(",大於0時回傳 09/03 17:36
soyoso: 該儲存格文字,後離開迴圈exit 09/03 17:37
soyoso: 數字方面如該欄都為數字,而要找出最後一筆有值的話,可以 09/03 17:39
soyoso: range.end或range.end.row 09/03 17:40
soyoso: 如該欄不一定都為數字,可以isnumeric,但因()有可能也會 09/03 17:46
soyoso: 被判斷為數字,可配合instr為0排除;另也可以vartype或 09/03 17:47
soyoso: typename(range.value) 09/03 17:48
soyoso: 迴圈部分則是以反序step負值的方式 09/03 17:48
joshjetly: 感謝so大,在下先依法試試,有問題再請教 09/04 06:22