如何根据另一个单元格小数来修复小数

时间:2012-06-26 09:04:47

标签: excel-vba vba excel

我有一个excel文件,我需要做的是,根据另一个单元格格式化单元格。 如果单元格“S1”具有3位小数,则单元格“T1”应具有相同的小数位数并且它是计算字段。 例如: S1 = 11.123 ---- T1 = 1.099

我需要为整个专栏做。

我可以通过将代码放在worksheet_change上来计算单元格上的小数位数。但我不知道如何格式化它。

请在这方面提供帮助。 提前致谢

1 个答案:

答案 0 :(得分:0)

既然你想要一个例子,这里就是:)但请注意,这是不是的答案。只是评论不能保存所有这些数据加上它也会破坏格式。话虽如此,它几乎和答案一样好,因为它涵盖了你想要的几乎所有方面......

我的假设:

  1. 数据在Sheet1
  2. Col S和Col T相同
  3. 实现你想要的逻辑

    1. 获取Col S.的最后一行。例如,请参阅this
    2. 循环通过Col S中的单元格并检查小数位数
    3. 根据Col S中相应单元格中的小数位数,使用.Numberformat格式化Col T中的单元格
    4. 很少有代码片段

      在Col S中循环通过细胞

      For i = 1 To LastRow
          If Sheets("Sheet1").Range("S" & i) .... Then
      
          End If
      Next i
      

      在上面的循环中设置单元格T的数字格式

      '~~> n below is the number of decimal places that you want
      Sheets("Sheet1").Range("T" & i).NumberFormat = "0." & String(n, "0")
      

      合并所有这些,然后尝试提出代码。让我们知道你被困在哪里,我们会从那里拿走它。