返回列表 上一主題 發帖

[發問] 如何回傳相對儲存格之間相減

[發問] 如何回傳相對儲存格之間相減

本帖最後由 donod 於 2015-11-2 15:39 編輯

請教大大,
例子中,有"*"的儲存格提示重複了相對欄位的儲存格,例如例子中X12-X14有"*",提示W12-W14重複了欄位AQ12-AQ14
1) 如果想將一連串有"*"部分的最下一個儲存格(一連串有"*"部分之下有機會再出現一連串有"*"部分或1個有"*"部分),回傳相對儲存格之間相減(以上例子:X14=W14-W11) 及
2) 將只有1個有"*"部分的儲存格,回傳相對儲存格之間相減(例子中:AJ7=AG7-AG6)
(有"*"部分可用其他字符代替的)
再請教大大,VBA如何寫,謝謝!
test1.rar (397.82 KB)

請教大大,
例子中,有"*"的儲存格提示重複了相對欄位的儲存格,例如例子中X12-X14有"*",提示W12-W14重複了欄位AQ12-AQ14
1) 如果想將一連串有"*"部分的最下一個儲存格(一連串有"*"部分之下有機會再出現一連串有"*"部分或1個有"*"部分),回傳相對儲存格之間相減(以上例子:X14=W14-W11) 及
2) 將只有1個有"*"部分的儲存格,回傳相對儲存格之間相減(例子中:AJ7=AG7-AG6)
(有"*"部分可用其他字符代替的)
再請教大大,VBA如何寫,謝謝!


因為OFFICE版本問題,之前的附件出現錯誤,現附上正確的,請教大大指導,謝謝!
test1.rar (626.37 KB)

TOP

回復 3# 准提部林
謝謝准提部林版大!

如果X5的條件改為:
=IF(AND($AO5<>0,$AP5<>0,$U5<>0,$V5<>0),"    *",IF(AND($AO5<>0,$AP5=0,$U5<>0,$V5<>0),"    *",IF(AND($AO5=0,$AP5<>0,$U5<>0,$V5=0.6216),"    *",IF(AND($AO5<>0,$AP5=0.6216,$U5=0,$V5<>0),"    *",IF(AND($AO5=0,$AP5<>0,$U5<>0,$V5=0),"    *",IF(AND($AO5<>0,$AP5=0,$U5=0,$V5<>0),"    *",IF(AND($AO5<>0,$AP5<>0,$U5<>0,$V5=0),"    *",IF(AND($AO5<>0,$AP5=0,$U5<>0,$V5=0),"    *",IF(AND($AO5=0,$AP5<>0,$U5=0,$V5<>0),"    *","")))))))))

請問如何套用在版大的公式中,謝謝!

TOP

回復 5# 准提部林

謝謝版大回覆,其實是想代入版大的公式:
=IF(($U5+$V5)*($AO5+$AP5)=0,"",IF(($U6+$V6)*($AO6+$AP6),"    *",W5-LOOKUP(,0/(X$4:X4=""),W$4:W4)))

TOP

本帖最後由 donod 於 2015-11-4 22:39 編輯

由原先
X5=IF(AND($U5+$V5<>0,$AO5+$AP5<>0),"    *","")

改為
X5=IF(AND($AO5<>0,$AP5<>0,$U5<>0,$V5<>0),"    *",IF(AND($AO5<>0,$AP5=0,$U5<>0,$V5<>0),"    *",IF(AND($AO5=0,$AP5<>0,$U5<>0,$V5=0.6216),"    *",IF(AND($AO5<>0,$AP5=0.6216,$U5=0,$V5<>0),"    *",IF(AND($AO5=0,$AP5<>0,$U5<>0,$V5=0),"    *",IF(AND($AO5<>0,$AP5=0,$U5=0,$V5<>0),"    *",IF(AND($AO5<>0,$AP5<>0,$U5<>0,$V5=0),"    *",IF(AND($AO5<>0,$AP5=0,$U5<>0,$V5=0),"    *",IF(AND($AO5=0,$AP5<>0,$U5=0,$V5<>0),"    *","")))))))))

版大的公式如何改寫,謝謝!

TOP

回復 8# 准提部林

謝謝版大回覆!

附件中的綠色部份是改用新條件,紅色部份出錯(Q681,Z681),參考了對上一組有"*"部份,但DELETE上一組有"*"部份就會正確。再請大大指教。

test2.rar (751.57 KB)

TOP

回復 10# 准提部林

感謝版大幫忙,公式已經沒有問題了。
但當數據太多及數據改變,需要很耐時間計算,甚至停下來。

TOP

再附上完整的檔案,謝謝大大!
test5a.rar (888.39 KB)
再次說明:
例子中,有"*"的儲存格提示重複了相對欄位的儲存格,例如例子中X12-X14有"*",提示W12-W14重複了欄位AQ12-AQ14
1) 如果想將一連串有"*"部分的最下一個儲存格(一連串有"*"部分之下有機會再出現一連串有"*"部分或1個有"*"部分),回傳相對儲存格之間相減(以上例子:X14=W14-W11) 及
2) 將只有1個有"*"部分的儲存格,回傳相對儲存格之間相減(例子中:AJ7=AG7-AG6)
(有"*"部分是可用其他字符代替的)

TOP

回復 13# 准提部林
可以了,感謝版大再次教授!
連備註都給我們加上,原本不明白的地方都清楚了!
感恩這兒的大大無私奉獻,謝謝您們!

TOP

回復 15# 准提部林

快速了很多,很有用,效率也提高了,謝謝准提部林版大教授!

TOP

        靜思自在 : 待人退一步,愛人寬一寸,就會活得很快樂。
返回列表 上一主題