-1
我想知道,如果給定excel文件中的3列,如何在給定第三個值的情況下有條件地交換前2列的內容。Excel中單元格內容的有條件交換
ABC
一個1個Y
B 2Ñ
Ç3 Y
d 4 Y
Ë5 N
我想要做的是:每當在C列中有一行包含值「y」,我想交換同一行的列A和B中的值。
除VBA之外沒有別的辦法嗎?
希望問題清楚。
感謝
我想知道,如果給定excel文件中的3列,如何在給定第三個值的情況下有條件地交換前2列的內容。Excel中單元格內容的有條件交換
ABC
一個1個Y
B 2Ñ
Ç3 Y
d 4 Y
Ë5 N
我想要做的是:每當在C列中有一行包含值「y」,我想交換同一行的列A和B中的值。
除VBA之外沒有別的辦法嗎?
希望問題清楚。
感謝
我看到2種方式來做到這一點:
=IF(C="something", B, A)
和其他 列相反的(A,B)。這可以根據需要進行切換,然後您可以將值複製粘貼到列上並刪除臨時的 列。if-statement
本身內。如果你有VBA的基礎知識,這應該是非常簡單的。如果你沒有這方面的知識,那就去internetz查看吧。代碼的一般感覺應該是什麼:
Dim cell as Range
Dim temp as string
for each cell in Range("C2:C" & Range("C2").End(xlDown).Row)
if cell.value = "something" then
temp = cell.offset(0, -1).value
cell.offset(0, -1).value = cell.offset(0, -2).value
cell.offset(0, -2).value = temp
end if
next cell
可不可以給你正在試圖做什麼的例子嗎? – rajah9
你不能用Excel公式做到這一點,沒有一些額外的「持有」單元。 – RBarryYoung