2017-10-06 136 views
0

我想:EXCEL:查找和替換,更改整個小區價值

  1. 搜索,如果細胞中含有一定的文字(如在「橙色美眉」「橙」)
  2. 如果返回true,改變整個單元格值爲「橙色」

到目前爲止,我可以搜索單元格,並將特定文本更改爲我想要的內容,但不是整個單元格(如「橙色」到「藍色」是「藍色粉碎」,這不是我想要做的,我只想要它是「藍色」)。我一直在用「查找&替換」功能來做到這一點。

我也用的功能

=if(isnumber(search("orange",B2)), substitute(B2, B2, "orange"), B2) 

其工作!但在新列打印我寫的代碼,並在B2在那裏的引用不替代的價值。

可能在VBA中完成?

我有什麼:

Oranges 
Orange slices 
Orange 
Orange pulp 

我想要什麼:

Orange 
Orange 
Orange 
Orange 
+0

看起來很像一個問題,我剛剛回答(https://stackoverflow.com/a/46608972/4388883)。只需要爲您的任務添加一個「IF」功能。 – ian0411

+0

因此,如果B2包含「ORANGE」,您希望B2中的值爲「ORANGE」 – PeterH

+0

在Excel中(無論如何嚴格使用公式),單元不能既是輸入又是輸出。如果您想要限制輸入單元格中允許的值,那麼爲何不強制用戶從下拉列表中進行選擇?這似乎是一個比讓用戶輸入任何他們想要的更好的解決方案,然後手動將其更改爲所需的格式。 – ImaginaryHuman072889

回答

2

你可以用一個公式做的最好的是:

=IF(ISNUMBER(SEARCH("Orange", A1)), "Orange", A1) 

如果你想不區分大小寫搜索,然後使用:

=IF(ISNUMBER(SEARCH(LOWER("Orange"), LOWER(A1))), "Orange", A1) 

然後,如果你想覆蓋原來的一欄,請務必貼在原來的列中的值:

CTRL + ALT + V

+0

謝謝@GrantMiller。這工作完美。只是需要一些常識,呃? –