如何在选择的每个单元格中添加ROUND()

单元格是:

3.141516
=10/6
=rand()
or blank
etc...

结果:

=ROUND(3.141516,1)
=ROUND(10/6,1)
=ROUND(RAND(),1)

并且如果为空-留空(不是ROUND(,1))

我想通过InputBox或其他方式选择范围和小数

我找到了如何在公式周围,常量周围,空白单元格,输入框周围添加ROUND()的方法,但全部都在单独的代码中(而不是一起)。我不是vba英雄,所以我需要帮助。谢谢你 :)

Sub RoundNum()
Dim Rng As Range
Dim WorkRng As Range
Dim xNum As Integer
On Error Resume Next
xTitleId = "Round Numbers"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xNum = Application.InputBox("Decimal", xTitleId, Type:=1)
For Each Rng In WorkRng
    Rng.Value = Application.WorksheetFunction.Round(Rng.Value, xNum)
Next
End Sub
Sub Makro1()
Dim Str As String
For Each cell In Selection
Str = cell.FormulaR1C1
If Mid(Str, 1, 1) = "=" Then Str = Mid(Str, 2)
cell.FormulaR1C1 = "=ROUND(" & Str & ",1)"
Next cell
End Sub

最后,我做了这样的事情:

Sub rRoundIt()
Dim rng As Range
Dim rngArea As Range
Dim AppCalc As Long
On Error Resume Next
With Application
    AppCalc = .Calculation
    .ScreenUpdating = False
    .Calculation = xlCalculationManual
End With
Set rng = Union(Selection.SpecialCells(xlCellTypeFormulas, xlNumbers), _
                Selection.SpecialCells(xlCellTypeConstants, xlNumbers))
For Each rngArea In rng
    If Left(rngArea.Formula, 7) <> "=ROUND(" Then _
        rngArea.Formula = "=ROUND(" & Replace(rngArea.Formula, Chr(61), vbNullString) & ", 1)"
Next rngArea
With Application
    .ScreenUpdating = True
    .Calculation = AppCalc
End With
End Sub

谢谢吉普:)

用户4039065

此简短子项同时使用Range.SpecialCells方法xlCellType Enumeration中的xlCellTypeConstants和xlCellTypeFormulas选项.SpecialCells仅通过使用xlNumbers选项获得那些产生数字的常数或公式来进一步过滤

Sub roundIt()
    Dim r As Range, rng As Range
    With Worksheets("Sheet1")
        With .UsedRange.Cells
            Set rng = Union(.SpecialCells(xlCellTypeFormulas, xlNumbers), _
                            .SpecialCells(xlCellTypeConstants, xlNumbers))
            For Each r In rng
                If Left(r.Formula, 7) <> "=ROUND(" Then _
                    r.Formula = "=ROUND(" & Replace(r.Formula, Chr(61), vbNullString) & ", 1)"
            Next r
        End With
    End With
End Sub

理想情况下,如果工作表的.UsedRange属性中没有表示数字的公式或常量,则最好提供一些错误控制如果找不到,则.SpecialCells将返回nothing

通过仅关注那些可能具有数值以应用ROUND函数的单元格,您应该大大缩短遍历工作表中单元格的循环迭代。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在选择的每个单元格中添加ROUND()

来自分类Dev

如何在Excel中为日期单元格的每个值添加引号?

来自分类Dev

如何在Google表格/ Excel的范围内的每个单元格中添加1

来自分类Dev

如何在Excel中为日期单元格的每个值添加引号?

来自分类Dev

如何在Excel VBA中添加到当前单元格选择

来自分类Dev

如何在UITableView中检测单元格选择-Swift

来自分类Dev

如何在行单元格中检测选择onChange

来自分类Dev

如何在NSUserDefaults中维护单元格选择?

来自分类Dev

如何在 UICollectionview 中禁用单元格选择

来自分类Dev

如何在Excel 2010中添加单元格填充?

来自分类Dev

如何在Excel中的单元格末尾添加文本

来自分类Dev

如何在单元格中添加colspan和文本?

来自分类Dev

如何在uitableviewcontroller中动态添加单元格?

来自分类Dev

如何在VB中的每个非空单元格之后在Excel中添加预定义行

来自分类Dev

如何在iOS,Objective C的表格视图的每个部分中仅实现单个单元格选择

来自分类Dev

如何在 ng-repeat 之后在每个表格行中添加一个手动单元格?

来自分类Dev

如何在uitable中取消选择单元格/如何禁用单元格选择突出显示?

来自分类Dev

如何在PHPExcel中的每个单元格名称数组中获取一系列单元格?

来自分类Dev

如何在表格视图的每个单元格下方添加行?

来自分类Dev

快速选择每个部分中的单元格

来自分类Dev

限制UITableView Swift中每个部分的单元格选择

来自分类Dev

Excel vba - 对于选择中的每个单元格

来自分类Dev

如何动态添加列和行以计算敲除中每个单元格的总数

来自分类Dev

如何通过向列VBS宏中的每个单元格添加小时来调整时间

来自分类Dev

如何向表中的每个单元格添加jQuery自动完成UI功能

来自分类Dev

如何将div包装器添加到asp GridView中的每个单元格?

来自分类Dev

如何在每个部分制作不同数量的单元格

来自分类Dev

如何为单元格B中的每个数字计算单元格A中的1

来自分类Dev

如何为单元格B中的每个数字计算单元格A中的1

Related 相关文章

  1. 1

    如何在选择的每个单元格中添加ROUND()

  2. 2

    如何在Excel中为日期单元格的每个值添加引号?

  3. 3

    如何在Google表格/ Excel的范围内的每个单元格中添加1

  4. 4

    如何在Excel中为日期单元格的每个值添加引号?

  5. 5

    如何在Excel VBA中添加到当前单元格选择

  6. 6

    如何在UITableView中检测单元格选择-Swift

  7. 7

    如何在行单元格中检测选择onChange

  8. 8

    如何在NSUserDefaults中维护单元格选择?

  9. 9

    如何在 UICollectionview 中禁用单元格选择

  10. 10

    如何在Excel 2010中添加单元格填充?

  11. 11

    如何在Excel中的单元格末尾添加文本

  12. 12

    如何在单元格中添加colspan和文本?

  13. 13

    如何在uitableviewcontroller中动态添加单元格?

  14. 14

    如何在VB中的每个非空单元格之后在Excel中添加预定义行

  15. 15

    如何在iOS,Objective C的表格视图的每个部分中仅实现单个单元格选择

  16. 16

    如何在 ng-repeat 之后在每个表格行中添加一个手动单元格?

  17. 17

    如何在uitable中取消选择单元格/如何禁用单元格选择突出显示?

  18. 18

    如何在PHPExcel中的每个单元格名称数组中获取一系列单元格?

  19. 19

    如何在表格视图的每个单元格下方添加行?

  20. 20

    快速选择每个部分中的单元格

  21. 21

    限制UITableView Swift中每个部分的单元格选择

  22. 22

    Excel vba - 对于选择中的每个单元格

  23. 23

    如何动态添加列和行以计算敲除中每个单元格的总数

  24. 24

    如何通过向列VBS宏中的每个单元格添加小时来调整时间

  25. 25

    如何向表中的每个单元格添加jQuery自动完成UI功能

  26. 26

    如何将div包装器添加到asp GridView中的每个单元格?

  27. 27

    如何在每个部分制作不同数量的单元格

  28. 28

    如何为单元格B中的每个数字计算单元格A中的1

  29. 29

    如何为单元格B中的每个数字计算单元格A中的1

热门标签

归档