Excel ";elseif“;“我的VBA代码”部分起作用,但“我的VBA代码”部分不起作用;如果;
我试图调整excel工作表中许多值的小数。Excel ";elseif“;“我的VBA代码”部分起作用,但“我的VBA代码”部分不起作用;如果;,excel,vba,Excel,Vba,我试图调整excel工作表中许多值的小数。 目标是: -对于大于100的值,无小数 -对于小于100但大于10的值,小数点后一位;和, -对于小于10的值,请输入两位小数 我认为使用VBA会很简单,尽管我以前从未使用过它。不幸的是,我错了。请看下面我的代码。出于某些原因,只有代码的“elseif”部分工作。对于小于100的值,正确调整小数。不过,我的代码中的“if”部分并非如此 代码似乎在范围(A1:D11)之外的单元格中工作(只要我选择它们);这很好,因为我的工作表很大。我不明白为什么 如果你
目标是:
-对于大于100的值,无小数
-对于小于100但大于10的值,小数点后一位;和,
-对于小于10的值,请输入两位小数 我认为使用VBA会很简单,尽管我以前从未使用过它。不幸的是,我错了。请看下面我的代码。出于某些原因,只有代码的“elseif”部分工作。对于小于100的值,正确调整小数。不过,我的代码中的“if”部分并非如此 代码似乎在范围(A1:D11)之外的单元格中工作(只要我选择它们);这很好,因为我的工作表很大。我不明白为什么 如果你能解释一下这些秘密,我将不胜感激
Sub adjust_decimal()
'
'
'
'
Dim cell As Range
For Each cell In Range("A1:D11")
If cell.Value > 100 Then
Selection.NumberFormat = "0;General"
ElseIf cell.Value < 100 Then
Selection.NumberFormat = "[<10]0.00;[<100]0.0;General"
End If
Next cell
End Sub
Sub-adjust_decimal()
'
'
'
'
暗淡单元格作为范围
对于范围内的每个单元格(“A1:D11”)
如果单元格值>100,则
Selection.NumberFormat=“0;常规”
ElseIf单元格。值<100
Selection.NumberFormat=“[您可以使用一行代码:
Range(“A1:D11”).NumberFormat=“[您可以使用一行代码:
范围(“A1:D11”)。NumberFormat=”[精确到100的值会发生什么?在任何情况下,为什么不使用条件格式而不是VBA?它们将保持在100。没有小数。如果我只有一个工作表,我可以使用条件格式。但是我有更多工作表。欢迎使用。我想你可以只使用一行代码,然后执行类似于范围的操作(“A1:D11”).NumberFormat=”[嗨,Foxfire!非常感谢您的输入。它工作得很好!非常感谢100的值到底会发生什么?无论如何,为什么不使用条件格式而不是VBA?它们将保持在100。没有小数。如果我只有一个工作表,我可以使用条件格式。但是我有更多。欢迎使用。我我想您可以只使用一行代码,然后执行类似于Range(“A1:D11”).NumberFormat=“[Hi Foxfire!非常感谢您的输入。它工作正常!非常感谢