Страницы: 1
RSS
Замена последних цифр в ячейке
 
Добрый день! Задача такова:
В ячейках есть определенные цифры допустим:
1,35734
1,35824
1,35567
Нужно при переходе на ячейку не выделяя последние 3 цифры, менять только их.
 
Irvin, а вы как себе это представляете? Покажите в файле-примере
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Jack Famous написал:
Покажите в файле-примере
как Вы предлагаете это показать? видео записать?

Пример:
Ячейка А1 - 1,35762
Ячейка А2 - 1,35864
Ячейка А3 - 1,35687

Нажимаю на ячейку А1 ввожу цифры 654 и она становится со значением 1,35654 вместо 1,35762 и тд
Изменено: Irvin - 02.11.2019 13:12:55
 
Цитата
Irvin: Jack Famous: Покажите в файле-примере
Цитата
также Irvin: как Вы предлагаете это показать? видео записать?
вы либо читать не умеете, либо осмысливать прочитанное
Подсказка: ключевое слово — ФАЙЛ (Excel)
Изменено: Jack Famous - 02.11.2019 13:18:08
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Jack Famous написал: ключевое слово — ФАЙЛ (Excel)
это нельзя показать в файле, читайте выше
 
Пример того, как есть, и пример результата.
Цитата
Irvin написал: это нельзя показать в файле,
Сам пример для экспериментов предлагаете рисовать помогающим?
Так, как хотелка описана - только макросом. Вы бы описали задачу подробнее, возможно, предложат другое решение
 
Irvin, Если это не показать в файле, то невозможно в нем и сделать.

Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("a1:a3")) Is Nothing Then
    v = Target.Value
    With Application
        .EnableEvents = False
        .Undo
        Target.Value = Replace(Left(Target.Text, Len(Target.Text) - Len(v)) & v, ",", ".")
        .EnableEvents = True
    End With
End If
End Sub

Но есть одно но, не рассчитывал на множественную замену.
Изменено: БМВ - 02.11.2019 13:44:02
По вопросам из тем форума, личку не читаю.
 
немного не догоняю чем поможет данный файл но ладно

В данном файле находясь на ячейке А1 или А2 или А3, если ввести 3 цифры (любые), то меняются последние 3 цифры в ячейке
 
А так
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Intersect(Target, Columns(1)) Is Nothing Then
    Application.EnableEvents = False
Dim iCell As Double
Dim iDrob As Double
    iCell = Target.Value * 100
    iCell = Fix(iCell)
    iDrob = Application.InputBox("Введите три цифры замены", , Type:=1) / 1000
    iCell = (iCell + iDrob) / 100
    Target = iCell
  End If
    Application.EnableEvents = True
End Sub
 
Спасибо за советы! Буду пробовать
Страницы: 1
Наверх