Я пытался настроить десятичные дроби для многих значений на листе Excel.
Цели были:
- для значений больше 100, без десятичных знаков;
- для значений меньше 100, но больше 10, один десятичный знак; и
- для значений ниже 10 два десятичных знака
Я думал, что использовать VBA будет достаточно просто, хотя я никогда не использовал его раньше. К сожалению, я ошибался. Пожалуйста, посмотрите мой код ниже. По некоторым причинам работает только раздел кода "elseif". Для значений ниже 100 десятичные дроби настроены правильно. Однако это не относится к разделу «если» моего кода.
Также кажется, что код работает в ячейках вне диапазона (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