excel的公式可謂是其中的精華,但是發布檔案時,有時需要將工作表單元格中的公式轉換為靜態結果,在excel中進行操作使用選擇性貼上為數值將可以實現。
如果有很多任務作表需要進行這種轉換,逐個去處理和操作,也是很耗時的操作,使用vba可以快速的進行轉換。
例項工作表中的資料和公式如下圖所示。
方法1:選擇性貼上為數值
sub formula2val_1(
)with range(
"a1"
).currentregion
.copy
.pastespecial xlpastevalues
endwith
endsub
【**解析】
第2行**使用currentregion讀取當前資料區域。
第3行**使用copy
方法拷貝資料區域。
第4行**使用pastespecial
方法貼上為資料,其中xlpastevalues
為vba常量。
方法2:使用value屬性轉換
sub formula2val_2(
)with range(
"a1"
).currentregion
.value = .value
endwith
endsub
【**解析】
第2行**使用currentregion讀取當前資料區域。
第3行**使用.value = .value
進行轉換。粗略看相同的屬性進行賦值,結果是否維持不變呢,從單元格顯示的結果看,沒有任何變化,但是檢視公式可以發現,所有公式都轉換為相應的值。
方法3:使用formula屬性轉換
sub formula2val_3(
)with range(
"a1"
).currentregion
.formula = .value
endwith
endsub
【**解析】
第2行**使用currentregion讀取當前資料區域。
第3行**使用.formula = .value
進行轉換。
上述幾種方法都很方便,大家可以根據自己的習慣選擇使用。
POI Excel HTML單元格公式問題
一 問題描述 使用mybatis從資料庫中獲取資料,然後用poi把資料填充到excel模板中,生成最終的xls檔案。把最終的xls檔案轉換為html檔案,並返回給前台顯示在panel中。excel模板中,除了資料點位符外,還有一些計算公式。由於這些計算公式引用的資料在模板中是點位符,所以計算單元顯示...
追蹤公式引用的單元格
描述 公式引用很多單元格進行計算是經常的事,在檢查公式 審核結果時很容易因為公式引用的 過於複雜而造成麻煩,下面通過乙個例項為大家介紹下如何標記公式 引用到哪些單元格,或者間接引用了哪些單元格,大概步驟就是在a1單元格輸入100,a9輸入200,c2輸入公式 a1 50,回車,繼續在e5單元 格輸入...
VBA 快速填充單元格
在excle中,需要填充單元格,直接下拉,然後即可填充,但是使用vba 又該如何實現這個呢?區域 public sub 快速填充 dim myrange as range cells.clear 清除所有 資料 set myrange range a1 a12 with myrange.cells ...