[算表] Excel 關於資料剖析VBA問題

看板Office作者 (simayi)時間7年前 (2017/01/20 19:31), 編輯推噓0(0011)
留言11則, 2人參與, 最新討論串1/1
軟體:Excel 版本:2016 想請問版上前輩們一個問題 關於Excel 資料剖析 想用VBA的方式來呈現 http://imgur.com/a/EgBKe 上面的圖 A欄的部分是比賽結果 B欄的部分是失分 儲存格A2內的意思是 A1隊得117分 A2隊得106分 以此類推 但他們都是寫在同一儲存格內 隊伍名稱的長度不一 有些隊伍名稱可能含有英.數字 但可以確認的是 隊伍的最後一個字一定是中文字 我的問題是 請問有辦法只取 "-"前面 [數字] 的部分嗎 把它分割出來放到B欄中 也就是失分的地方 再麻煩版上的前輩幫忙 無論如何 先謝謝你們了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.128.123 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1484911873.A.18F.html

01/20 19:52, , 1F
01/20 19:52, 1F

01/20 20:23, , 2F
太好了 非常謝謝你的幫忙s大
01/20 20:23, 2F

01/20 21:42, , 3F
巨集的話想到二種方式
01/20 21:42, 3F

01/20 21:43, , 4F
1.以instr找"-",取"-"前字串
01/20 21:43, 4F

01/20 21:43, , 5F
mid迴圈for..next反序判斷非數字isnumeric,找到脫離迴圈
01/20 21:43, 5F

01/20 21:43, , 6F
for exit,最後再以脫離時迴圈變數,配合mid來取得數字
01/20 21:43, 6F

01/20 21:43, , 7F
2.正規化,pattern以"[\u4e00-\u9fa5][0-9]{1,3}\-"
01/20 21:43, 7F

01/20 21:43, , 8F
取得的字串再以mid和replace調整
01/20 21:43, 8F

01/20 21:50, , 9F
或以"\S*[\u4e00-\u9fa5]([0-9]{1,3})\-\S*"
01/20 21:50, 9F

01/20 21:50, , 10F
正規化的replace取$1
01/20 21:50, 10F

01/21 10:07, , 11F
更正,應為正規表示而非正規化
01/21 10:07, 11F
文章代碼(AID): #1OWVK16F (Office)