我正在尝试替换单元格中的值,所以如果它有0来隐藏它。
excel公式是以下IF(A1=0;"";A1)
。
我正在尝试自动,但我遇到了问题。
到目前为止,我提出了这个问题:
Sub apply_Error_Control()
Dim cel As Range
For Each cel In Selection
If cel.HasFormula Then
cel.Formula = Replace(cel.Formula, "=", "=IFF(") & "=0" & ";" & "")"
End If
Next cel
End Sub
答案 0 :(得分:1)
为此链接提供视图: Three ways to hide zero values
我仍然强烈建议您遵循单元格格式化路线:
Sub apply_Error_Control()
Dim rngCurrent As Range
If TypeName(Selection) = "Range" Then
Set rngCurrent = Selection.SpecialCells(xlCellTypeFormulas)
rngCurrent.NumberFormat = "0;-0;;@"
End If
End Sub
但是如果你坚持使用基于公式的方法,请至少采用我概述的方法,以避免在(例如)嵌入式图表或按钮上运行代码,并立即点击这些单元格一个公式 - 循环查找具有公式的公式是繁琐而缓慢的。
答案 1 :(得分:0)
尝试一下(注意<openerp>
<data>
<template id="report_idtest_name">
<t t-call="report.html_container">
<t t-foreach="docs" t-as="o">
<t t-call="report.external_layout">
<div class="page">
<h2>Report title</h2>
</div>
</t>
</t>
</t>
</template>
<report
id="report_idtest"
model="pprepair.ppmain"
string="Ppreport"
report_type="qweb-pdf"
name="pprepair.report_idtest_name"
/>
</data>
</openerp>
所以它只能在您手动选择的范围内工作):
Selection.Cells