Нужно написать макрос так, чтоб при вводе числа в ячейку (напр. 123) при нажатии Enter это число умножалось на 10, то есть в ячейку записывалось 1230. вот что я написала, но первое число непрерывно пересчитывается (цикл останавливается на нем)
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Cells(2, 16).Value = 0 Then Cells(2, 3).Value = Cells(2, 3).Value * Cells(2, 15) Cells(2, 16).Value = 1
End If
End Sub
[/vba]
HELLPPPP!!!!
Нужно написать макрос так, чтоб при вводе числа в ячейку (напр. 123) при нажатии Enter это число умножалось на 10, то есть в ячейку записывалось 1230. вот что я написала, но первое число непрерывно пересчитывается (цикл останавливается на нем)
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Cells(2, 16).Value = 0 Then Cells(2, 3).Value = Cells(2, 3).Value * Cells(2, 15) Cells(2, 16).Value = 1
Ошибка не выскакивает при вводе НЕ числа? Если я правильно понял, то вот так нужно:[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If IsNumeric(Target.Value) = True Then If Target.Address = [c2].Address Then Target.Value = Target.Value * 10 End If End If Application.EnableEvents = True End Sub
[/vba]
А что делает ваш макрос, для меня, остается загадкой [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If IsNumeric(Target.Value) = True Then If Cells(2, 16).Value = 0 Then Cells(2, 3).Value = Cells(2, 3).Value * Cells(2, 15) Cells(2, 16).Value = 1 End If End If Application.EnableEvents = True End Sub
[/vba]
Ошибка не выскакивает при вводе НЕ числа? Если я правильно понял, то вот так нужно:[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If IsNumeric(Target.Value) = True Then If Target.Address = [c2].Address Then Target.Value = Target.Value * 10 End If End If Application.EnableEvents = True End Sub
[/vba]
А что делает ваш макрос, для меня, остается загадкой [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If IsNumeric(Target.Value) = True Then If Cells(2, 16).Value = 0 Then Cells(2, 3).Value = Cells(2, 3).Value * Cells(2, 15) Cells(2, 16).Value = 1 End If End If Application.EnableEvents = True End Sub