Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ускорение регулярного ввода значений в одну и туже ячейку - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Ускорение регулярного ввода значений в одну и туже ячейку (Формулы/Formulas)
Ускорение регулярного ввода значений в одну и туже ячейку
Chicony Дата: Воскресенье, 12.12.2021, 15:52 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Доброго времени суток!
Каждый рабочий день в одни и теже ячейки вводятся значения нарастающим итогом, т.е. к значению предыдущего дня прибавляются значение текущего. В итоге, в конце месяца в ячейке получается целая формула. Каждый день, для ввода нового значения в ячейку, приходиться входить в её редактирование, писать знак + и вводить значение. Может есть какой то вариант как ускорить этот процесс просто встав на нужную ячейку и набрать значение, и это значение автоматом добавилось бы к ранее введенным?
Всем спасибо за отклик!
 
Ответить
СообщениеДоброго времени суток!
Каждый рабочий день в одни и теже ячейки вводятся значения нарастающим итогом, т.е. к значению предыдущего дня прибавляются значение текущего. В итоге, в конце месяца в ячейке получается целая формула. Каждый день, для ввода нового значения в ячейку, приходиться входить в её редактирование, писать знак + и вводить значение. Может есть какой то вариант как ускорить этот процесс просто встав на нужную ячейку и набрать значение, и это значение автоматом добавилось бы к ранее введенным?
Всем спасибо за отклик!

Автор - Chicony
Дата добавления - 12.12.2021 в 15:52
китин Дата: Понедельник, 13.12.2021, 08:31 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
в модуль листа
[vba]
Код
Dim vVal
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then
       Application.EnableEvents = 0
          Target.Value = vVal + Target.Value
       Application.EnableEvents = 1
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then vVal = Target.Value
End Sub
[/vba]
меняется ячейка А2. точнее при наличии файла примера


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениев модуль листа
[vba]
Код
Dim vVal
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then
       Application.EnableEvents = 0
          Target.Value = vVal + Target.Value
       Application.EnableEvents = 1
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then vVal = Target.Value
End Sub
[/vba]
меняется ячейка А2. точнее при наличии файла примера

Автор - китин
Дата добавления - 13.12.2021 в 08:31
Chicony Дата: Вторник, 14.12.2021, 16:10 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

А можно сделать так, чтобы была возможность видеть историю изменений в виде: =2+5+6-4 ....
 
Ответить
СообщениеА можно сделать так, чтобы была возможность видеть историю изменений в виде: =2+5+6-4 ....

Автор - Chicony
Дата добавления - 14.12.2021 в 16:10
Serge_007 Дата: Вторник, 14.12.2021, 16:16 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Можно
Добавьте в макрос запись в удобное для Вас место значения переменной при каждой итерации


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеМожно
Добавьте в макрос запись в удобное для Вас место значения переменной при каждой итерации

Автор - Serge_007
Дата добавления - 14.12.2021 в 16:16
bigor Дата: Вторник, 14.12.2021, 16:45 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1097
Репутация: 209 ±
Замечаний: 0% ±

нет
А можно сделать так, чтобы была возможность видеть историю изменений в виде: =2+5+6-4 ....
может тогда проще вводить значения по дням в столбец и подсчитывать итого?
 
Ответить
Сообщение
А можно сделать так, чтобы была возможность видеть историю изменений в виде: =2+5+6-4 ....
может тогда проще вводить значения по дням в столбец и подсчитывать итого?

Автор - bigor
Дата добавления - 14.12.2021 в 16:45
Chicony Дата: Вторник, 14.12.2021, 23:28 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

может тогда проще вводить значения по дням в столбец и подсчитывать итого?

К сожалению не проще. Форма не позволяет так сделать, становится громоздкой и нечитаемой.
 
Ответить
Сообщение
может тогда проще вводить значения по дням в столбец и подсчитывать итого?

К сожалению не проще. Форма не позволяет так сделать, становится громоздкой и нечитаемой.

Автор - Chicony
Дата добавления - 14.12.2021 в 23:28
Chicony Дата: Вторник, 14.12.2021, 23:29 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Всем спасибо за подсказки и помощь в решении!
 
Ответить
СообщениеВсем спасибо за подсказки и помощь в решении!

Автор - Chicony
Дата добавления - 14.12.2021 в 23:29
bmv98rus Дата: Среда, 15.12.2021, 07:45 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
видеть историю изменений в виде: =2+5+6-4 ....


[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then
        If Target <> "" Then
            Application.EnableEvents = 0
            vVal = Target
            Application.Undo
            Target.Formula = IIf(Target.HasFormula, "", "=") & _
                Target.Formula & "+" & vVal
            Application.EnableEvents = 1
        End If
    End If
End Sub
[/vba]
Для диапазона нужно доработать, но это с примером


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Среда, 15.12.2021, 07:51
 
Ответить
Сообщение
видеть историю изменений в виде: =2+5+6-4 ....


[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2")) Is Nothing Then
        If Target <> "" Then
            Application.EnableEvents = 0
            vVal = Target
            Application.Undo
            Target.Formula = IIf(Target.HasFormula, "", "=") & _
                Target.Formula & "+" & vVal
            Application.EnableEvents = 1
        End If
    End If
End Sub
[/vba]
Для диапазона нужно доработать, но это с примером

Автор - bmv98rus
Дата добавления - 15.12.2021 в 07:45
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Ускорение регулярного ввода значений в одну и туже ячейку (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!