当前位置: 首页 > 知识库问答 >
问题:

如何通过excel宏舍入特定范围值

年健
2023-03-14

我需要将范围值(“M2:M13”)四舍五入到小数点后两位。我使用“数字格式”选项编写了下面的代码,但当我将该值复制粘贴到另一个工作簿时,它在编辑栏中显示整数,并在选定的单元格中显示四舍五入后的数字。

如何将数字完全四舍五入到小数点后两位?

Sub RoundOff()
    Worksheets("Sheets2").Activate
    Range("M2").Select
    Selection.NumberFormat="0.00"   
    ActiveCell.FormulaR1C1="RC[-3]/RC[-4]*100"
    Range("M2:M13").Select
    Selection.FillDown
End Sub

共有2个答案

苏鸿羽
2023-03-14

只需执行< code > range(" A1 ")entire column . number format = " # . 00 " 即可。

它会格式化整个A列

曹理
2023-03-14

@Nilusha·它的公式中缺少“RC[-3]/”之前的一个“=”。

你可以试试:

Sub Test()
    With ThisWorkbook.Worksheets("Sheet2")
        .Range("M2").FormulaR1C1 = "=RC[-3]/RC[-4]*100"
        With .Range("M2:M13")
            .FillDown
            .NumberFormat = "0.00"
        End With
    End With
End Sub
 类似资料:
  • 您好,我有一个值为0-380的输入范围,我想禁用一些值,比如ID 30。因此,当我选择29并按下右箭头时,它必须更改为31。

  • 我正在尝试将值记录为 2dp,但在使其工作时遇到问题。 我有一个包含测试用例的工作簿。宏获取这些测试用例,并在单独的工作簿中运行它们。然后将第二个工作簿中的计算值记录回第一个工作簿中。 我可以通过fine得到所有值,但希望其中三个值为2dp。我现在可以让它们显示为2dp,但当我单击单元格时,实际值约为13dp。如何将值设置为2dp,而不仅仅显示为2dp? 我试过。NumberFormat0.00,

  • 我画了一个计数图如下: (数组([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]),) 但我想将xticks更改为仅显示这4个数字,因此我检查了文档并按如下方式重新编码: 但是xticks不是我想要的<我搜索了相关的问题

  • 我目前有一个数字列表,我想知道这些数字中的哪些在一定范围内,以及它们在列表中的位置是什么。 我对巴黎相当陌生,所以我不知道该怎么做。 举一个简单的例子来说明我在做什么: 查找位于 0.05 和 0.15 范围内的数字 1 到 20 的逆函数 我列了一个清单,像这样: 从这里,我想要所有i的列表,以便A[i]在该范围内。 但我不知道如何从这里开始。我尝试了一些简单的if/for语句,但这些都不起作用

  • audit_modifier是VARCHAR2(30个字符),并且audit_modifier值以以下格式存储[2018-01-18T17:19:47.285z]。 从TO_DATE('2018-01-16','yyyy-mm-dd')和TO_DATE('2018-01-16','yyyy-mm-dd')之间的trunc(audit_modifier)的表中选择*; ORA-00932:不一致的数

  • 假设我有一个类,,其构造函数采用目标名称。为了对这个类进行CDI验证,我可以编写一个类似这样的生成器,它检查注入点以找到一个名为的注释(不是限定符,因为生成器方法不能用它可以生成的所有可能的主题名值进行注释): 但是假设这个类很重,但是线程安全,因此应该尽可能多地共享。这意味着我希望任何看起来像的注入站点共享以FooBar作为名称构建的的相同实例。 我们不能将producer方法标记为Applic