位置:首頁 > 軟件操作教程 > 辦公軟件 > Excel > 問題詳情

如何使用VBA程序快速刪除單元格中的公式?

提問人:周麗平發(fā)布時間:2021-07-29

1、啟動Excel 2013并打開需要處理的工作表,E3:F6單元格區(qū)域的單元格中存在著公式。在“開發(fā)工具”選項卡的“控件”組中單擊“插入”按鈕,在打開的列表的“表單控件”欄中選擇“按鈕”控件,如圖1所示。

image.png

圖1 選擇“按鈕”控件

2、按住左鍵拖動鼠標(biāo)在工作表中繪制該控件,此時將打開“指定宏”對話框,在“宏名”文本框中輸入宏名后單擊“新建”按鈕,如圖2所示。

image.png

圖2 設(shè)置宏名

(3)打開Visual Basic編輯器并自動創(chuàng)建名為“刪除公式”的過程,在代碼窗口中輸入過程代碼,如圖3所示。具體的程序代碼如下。

image.png

圖3 輸入程序代碼

01 Sub 刪除公式()

02 Dim Mywb As Workbook,Myws As Worksheet

03 Dim rng As Range,rngA As Range

04 For Each Mywb In Workbooks

05 With Mywb

06 For Each Myws In.Worksheets

07 On Error Resume Next

08 Set rngA=Myws.UsedRange.SpecialCells(xlCellTypeFormulas)

'獲取公式單元格區(qū)域引用

09 For Each rng In rngA

10 rng.Value=rng.Value'將公式轉(zhuǎn)換成數(shù)值

11 Next

12 Next

13 End With

14 Next

15 End Sub

注意

在這里的程序代碼中,使用For Each……In結(jié)構(gòu)對每個工作簿的每張工作表進(jìn)行循環(huán),使用SpecialCells(xlCellType Formulas)語句獲取工作表中帶有公式的單元格。同樣使用For Each……In語句來遍歷所有帶有公式的單元格,使用rng.Value=rng.Value語句將單元格的值賦予單元格以實現(xiàn)將單元格中的公式轉(zhuǎn)換為具體的數(shù)值。

4、切換到Excel工作表,右擊按鈕,選擇快捷菜單中的“編輯文字”命令,然后將按鈕上的文字修改為“刪除公式”。取消對按鈕文字的編輯后單擊該按鈕運(yùn)行程序,工作表中的所有公式均被刪除,原來帶有公式的單元格中只顯示了公式的計算結(jié)果,如圖4所示。

image.png

圖4 刪除單元格中的公式

繼續(xù)查找其他問題的答案?

回復(fù)(0)
返回頂部