如何做到 Excel 只保存數值不保留公式?

工作簿中工作本的量比較大,不要回答覆制加選擇性粘貼。


好像大家說的都還是選擇性粘貼。。你可以開一個vba的宏來設置某個單元格的值為他的公式結果,然後把這個應用到整個worksheet上去。
但是這和黏貼可能後台操作差不多,唯一是幫你降低滑鼠選擇的辛苦,而這件事用"定位"也能一下子選擇一批你要的單元格。good luck!

==============================
記得不真切了又查了一下,下面這段語句work的原因。
Sub fmlatoval()
Range("A1").Value = Range("A1").Value
End Sub

Sub fmlatoval()
Range("A1").Copy
Range("A1").PasteSpecial xlPasteValues
Application.CutCopyMode = False
End Sub

類似這樣的,就是告訴EXCEL你要把A1的值設定為他現在的值。為什麼有這麼一種奇怪的寫法?
是因為EXCEL的VBA里,range對象的value屬性和formula是可以通用的,但是是單向的,就是說如果你想把公式的內容變成值,可以混寫著,但好像反過來不行。

第二個方法就是類似複製黏貼的方式,但用這個方法輪一遍,其實他後台操作和你自己弄複製黏貼差不多。


用宏吧
Sub de() "去公式"
Dim a As Worksheet
For Each a In Sheets
a.UsedRange = a.UsedRange.Value
Next
End Sub


1ctrl + A
2ctrl + C
3ctrl + V
4點右下角出現的粘貼圖標,選「只有值」


先複製,再點右鍵,選擇"選擇性粘貼",然後選擇"數值",最後點"確定"即可。


我來問一個,

以下公式用來計算乳膠漆的面積:

長B4 寬 高 S窗 S門F4 計算公式G4 面積

2B4 3 4 1.5 2.5 =(B4+C4)*2*D4-E4-F4 36

問題如下:

當前的計算公式列我是用getcell(6,單元格)顯示的,可是我要的是=(2+3)*4*2-1.5-2.5

這個如何實現?


可以直接把「只粘貼值」的那個按鈕放到快捷上去,我用的是alt+~。所以就是ctrl+c --&> alt+~


推薦閱讀:

如何快速讓兩列不相同的數據互補填充?
Excel如何用函數將單列數據分成多列?
日本公司的職員做 Excel 表格是否厲害?

TAG:Excel公式 | MicrosoftOffice使用技巧 |