[問題] EXCEL VBA 特殊數字分析語法

看板Office作者 (qingcai)時間7年前 (2018/09/01 05:13), 7年前編輯推噓0(0011)
留言11則, 1人參與, 7年前最新討論串1/2 (看更多)
(若是和其他不同軟體互動之問題 請記得一併填寫) 軟體:EXCEL 版本:2016 請教各位VBA大神 假設有四行資料,分別為 ABCDEFGHIJ........ 1 7985342601 2 8526109743 3 4683125970 4 3927586104 . . . 然後先看後三行並且讓它分前五個跟後五個分析(分左右邊的意思),像這樣 ABCDE FGHIJ..... 2 85261 09743 3 46831 25970 4 39275 86104 . . . 如何用VBA找出前兩行有重複數字且三行都出現的跳過不選 以上面的例子來講結果會分別是 左邊有861 右邊有79 然後把這兩種結果分別放到兩個儲存格裡 再來讓剛剛出現的結果去對第一排的數字 79853 42601 一樣分左右兩邊看 以左邊前五個來講 861只有8在左邊------代表 1 61都跑到右邊後五個--代表-2 兩個相加-2+1=-1 以右邊來看後五個 79兩個數字沒有一個在裡面 都跑到左邊-------代表-2 把最後兩個結果相加 -1+(-2)= -3 然後顯示在儲存格裡 以上寫成語法要怎陳述? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.52.229.240 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1535750033.A.B44.html

09/01 10:53, 7年前 , 1F
巢狀迴圈於左右內五個儲存格,以原文來看為a2:e2和f2:j2
09/01 10:53, 1F

09/01 10:53, 7年前 , 2F
再以工作表函數countif判斷前兩行有重複數字(如範圍包含
09/01 10:53, 2F

09/01 10:53, 7年前 , 3F
a2:e2)的話,重覆回傳值為2,不包含的話為1
09/01 10:53, 3F

09/01 10:53, 7年前 , 4F
且三行都不出現,同樣也以countif判斷
09/01 10:53, 4F

09/01 10:53, 7年前 , 5F
上述二個條件都符合時再和第1列的數字分左右,以countif判
09/01 10:53, 5F

09/01 10:54, 7年前 , 6F
斷。
09/01 10:54, 6F

09/01 10:54, 7年前 , 7F
8在左邊和6,1在右邊時所累加1和-1(原文寫-2,是否是二個數
09/01 10:54, 7F

09/01 10:55, 7年前 , 8F
字)方面,可以巢狀迴圈內的迴圈變數值拿來做為判斷,看要
09/01 10:55, 8F

09/01 10:55, 7年前 , 9F
累加的數值為1或-1
09/01 10:55, 9F
感謝大大 剛學會回覆留言..不過照我剛剛講的可以怎麼陳述呢 ※ 編輯: Qingcai (27.52.229.240), 09/01/2018 14:25:13

09/01 14:45, 7年前 , 10F
迴圈的變數值,為小於或小於等於5(看迴圈初始值)
09/01 14:45, 10F

09/01 14:45, 7年前 , 11F
來判斷左右邊countif範圍有該數值時是要累加1或-1
09/01 14:45, 11F
文章代碼(AID): #1RYQ-Hj4 (Office)
文章代碼(AID): #1RYQ-Hj4 (Office)