Board logo

標題: 請教一個IF小問題 [打印本頁]

作者: smking0204    時間: 2012-2-22 00:37     標題: 請教一個IF小問題

本帖最後由 smking0204 於 2012-2-22 00:41 編輯

B1 =數字1, B2 = 數字2.....B50 = 數字50
C1到C50不知道哪幾格為空白

也就是在C1發現沒資料 就把B1的資料寫入到A1
在C5發現沒資料 就把B5的資料寫入到A2
在C7發現沒資料 就把B7的資料寫入到A3
在C9發現沒資料 就把B9的資料寫入到A4

A欄依序往下 沒有空格




以上 麻煩大師解救啦
作者: danny001    時間: 2012-2-22 07:05

=IF(C1=0,B1,"")
作者: register313    時間: 2012-2-22 12:28

回復 1# smking0204

A1=IF(INDEX($C$1:$C$50,ROW()*2-1,1)="",INDEX($B$1:$B$50,ROW()*2-1,1),"")
作者: smking0204    時間: 2012-2-22 22:57

danny001 那方式無法排序
register313 不知道為什麼 這方式有錯 還是沒有排序 而且篩選出來有錯
作者: register313    時間: 2012-2-22 23:18

本帖最後由 register313 於 2012-2-22 23:38 編輯

回復 4# smking0204

不了解何處錯誤,
但是我自行改了個地方,C3
C1=""  B1 寫到A1
C3=""  B3 寫到A2
C5=""  B5 寫到A3
C7=""  B7 寫到A4
[attach]9701[/attach]

還有這與排序 篩選有何關連
可否作個範例再說明清楚你要的功能
作者: Hsieh    時間: 2012-2-22 23:47

回復 1# smking0204

A1陣列公式=IF(ROW(A1)>COUNTBLANK($C$1:$C$25),"",INDIRECT("B"&SMALL(IF($C$1:$C$25="",ROW($B$1:$B$25),""),ROW(A1))))
向下複製
作者: hugh0620    時間: 2012-2-23 11:09

Hsieh 大大的公式是對的唷~ (有測試過)
register313 大大的公式會跳格~ A2 會是空的~
以下是兩個執行後的圖片
[attach]9702[/attach]
[attach]9703[/attach]
作者: register313    時間: 2012-2-23 11:25

本帖最後由 register313 於 2012-2-23 11:27 編輯

回復 7# hugh0620

1.我以為只考慮C1 C3 C5 C7...奇數列(因樓主舉例皆為1 3 5 7 奇數列)
2.未注意到A欄不要空白
看了Hsieh超版之解答後,知道樓主的意思了
作者: hugh0620    時間: 2012-2-23 11:30

回復 8# register313


    個人在猜樓主要的是只要C欄中有空白~
    就用B欄位同一列的資料填到A欄位~
    且這樣也比較符合實際上的應用~
作者: brabus    時間: 2012-2-25 12:12

Hsieh大大是用陣列公式的高手呢
好希望可以跟他學習




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)