[英]Excel VBA 2010 - If-Then-ElseIf statement not recognizing string variables
[英]Compacting If-Then-ElseIf
在 Excel VBA 中压缩以下代码的任何好的提示? 我正在尝试在我的图表中设置网格线(主要和次要),但这取决于源数据的最大值。 感谢输入! (来自新手)
If MaxY < 0.1 Then
MajGridY = 0.1 / 5
MinGridY = 0.1 / 10
ElseIf MaxY < 1 Then
MajGridY = 1 / 5
MinGridY = 1 / 10
ElseIf MaxY < 10 Then
MajGridY = 10 / 5
MinGridY = 10 / 10
ElseIf MaxY < 100 Then
MajGridY = 100 / 5
MinGridY = 100 / 10
ElseIf MaxY < 1000 Then
MajGridY = 1000 / 5
MinGridY = 1000 / 10
ElseIf MaxY < 10000 Then
MajGridY = 10000 / 5
MinGridY = 10000 / 10
ElseIf MaxY < 100000 Then
MajGridY = 100000 / 5
MinGridY = 100000 / 10
ElseIf MaxY < 1000000 Then
MajGridY = 1000000 / 5
MinGridY = 1000000 / 10
ElseIf MaxY < 10000000 Then
MajGridY = 10000000 / 5
MinGridY = 10000000 / 10
ElseIf MaxY < 100000000 Then
MajGridY = 100000000 / 5
MinGridY = 100000000 / 10
End If
Dim factor As Long
If MaxY < 1 Then
factor = Fix(Application.WorksheetFunction.Log10(MaxY))
Else
factor = Application.WorksheetFunction.RoundUp(Application.WorksheetFunction.Log10(MaxY), 0)
End If
If 10 ^ factor = MaxY Then factor = factor + 1
MajGridY = 10 ^ factor / 5
MinGridY = 10 ^ factor / 10
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.