我想使用VBA在Excel表格中返回一个比率。我有两列数据:修复的缺陷和未修复的缺陷。比率将是船员修理的缺陷数量,以及他们无法修复的缺陷数量。我正在使用此功能来查找GCD:
Function GCD(numerator, denominator)
If denominator = 0 Then
GCD = numerator
Else
GCD = GCD(denominator, numerator Mod denominator)
End If
End Function
然后我计算它并将其打印在我的电子表格的结果页面中:
Sheets("Results").Range("M" & iResults)/Value = RatioNum1 & ":" & RatioNum2
其中RatioNum1和RatioNum2只是我存储Data1 / GCD和Data2 / GCD的变量。我的问题是,在Excel中,比例为1比1,它每次打印第二个数字,加上一个额外的数字,在本例中为1:01。或者,如果它应该是3:1,它打印3:01,依此类推。
这只是函数返回值的方式,还是我无意中在我的代码中添加了额外的数字。
答案 0 :(得分:1)
要删除第二个比率数字前的零,只需使用Int
函数,如下所示:
Sheets("Results").Range("M" & iResults)/Value = RatioNum1 & ":" & Int(RatioNum2)