Страницы: 1
RSS
Кнопки плюс и минус для изменения значения в ячейках
 
Добрый день, уважаемые.

Столкнулся с необходимостью вести в excel таблицу с большим количеством строк.
Периодически мне нужно будет изменять в этих строках значения в одном и том же столбце на 1. Прибавлять и вычитать, говоря проще.
Для ускорения процесса, чтобы не вводить руками новое значение, я попробовал написать кнопки «+» и «-», которые при нажатии добавляют или вычитают единицу из нужного значения.
Так как я в VBA не понимаю вообще ничего,  нашёл два решения, первое из них жёстко привязывает кнопку к конкретной ячейке, второе, которым я пользуюсь, выглядит так:
Код
1
2
3
Sub Increment()
Selection.Value = Selection.Value + 1
End Sub
То есть, добавляет единицу к выбранной ячейке; аналогично для кнопки «-», тот же код, но с вычитанием .

Чего бы хотел я:
Кнопки «+» и «-», которые можно создать автоматически вместе с новыми строками в таблице, и которые будут привязаны с самого начала к конкретной ячейке этой таблицы, без необходимости вручную создавать и править код кнопки для каждой строки. В первой строчке кнопка управляет значением в ячейке, допустим, A1, во второй — A2, в третьей — A3 и так далее. Как автозаполнение формулами и значениями.

Насколько возможно сделать такое? И насколько это рационально, может быть есть более лёгкий путь?

Заранее спасибо за ответы!
Изменено: Georgy_Solovyev - 17.07.2017 09:04:46 (Добавил файл с примером реализации. )
 
Название темы должно отражать суть задачи. Есть решение без кнопок. Предложите новое название. Модераторы заменят.
 
Цитата
vikttur написал:
Есть решение без кнопок.
Можно поподробнее?
Если действительно есть решение без кнопок, которое приведёт к той экономии действий, что мне нужна, тему можно будет закрыть.
Спасибо.
 
Цитата
Georgy_Solovyev написал: Можно поподробнее?
Цитата
vikttur написал: Название темы должно отражать суть задачи
 
vikttur, как насчёт «Кнопки плюс и минус для изменения значений в конкретных ячейках»?
 
Значит, мой вариант не по теме - он без кнопок.
 
Вариантов уйма. Вы покажите пример, чтобы определить рациональное для вас видение дела.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Alemox, пример я привёл в первом сообщении.
Что вы посоветуете туда добавить?
Мне нужно создать кнопку, которая будет изменять значение ячейки в определённом столбце в той же строке, в которой находится эта кнопка.
И во-вторых, мне нужно автоматизировать создание таких кнопок, чтобы не делать их вручную на каждой строке.
Изменено: Georgy_Solovyev - 10.07.2017 20:43:17
 
Цитата
Georgy_Solovyev написал:
пример я привёл в первом сообщении.

Где? Файла не вижу.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Georgy_Solovyev, а чем не устраивает способ, которым Вы пользуетесь сейчас? Выделяете ячейку или диапазон ячеек, который хотите увеличить/уменьшить на 1 и жмёте соответсвующую кнопку. Можно вместо кнопок, вынести значки на ленту Excel.

Цитата
Georgy_Solovyev написал:
насколько это рационально?
На первый взгляд выглядит нерационально. Захотите изменить 100 ячеек, будете жать на 100 кнопок?

 
 
Цитата
Georgy_Solovyev написал:
мне нужно автоматизировать создание таких кнопок, чтобы не делать их вручную на каждой строке
Не нужно много кнопок - достаточно двух )
См. вариант.
 
Юрий М, спасибо.

К сожалению, это примерно то же самое, что сделал я изначально (добавил пример в шапку).
Суть в том, чтобы кнопки создавались автоматически, и не приходилось делать два клика, один на требуемый ряд/ячейку, второй — по самой кнопке.  
 
Сообщение №2. Или кнопки для Вас важнее?
 
vikttur, важнее чего?

Для меня во главе угла стоит возможность быстро менять значение ячеек конкретного столбца на единицу.
В моём понимании быстрее всего это можно сделать через кнопки — 1 клик по кнопке для изменения значения в одной ячейке.

Если вы можете предложить другой способ — буду рад выслушать.
 
Сколько раз писать: название темы должно отражать суть задачи. Других решений в этой теме о кнопках быть не может!
 
Цитата
Georgy_Solovyev написал:
Суть в том, чтобы кнопки создавались автоматически
100 строк - 200 кнопок. Так Вы хотите? )
 
Есть такое дело, сейчас поищу дома, но на работе точно переделывал под себя код из интернета, возможно даже с планеты. Суть в том что на selection.change вешаются кнопки с позиционированием от активной ячейки - должно подойти.

upd. Нашел, прикрутил, пробуйте.
Изменено: Дмитрий Тарковский - 17.07.2017 21:56:46
 
Дмитрий, точно такой вариант я предложил в #11 - не подходит: очень затратно по времени СНАЧАЛА выделить ячейку, а уже ПОТОМ жать на кнопки )
 
Если изменять ячейки последовательно одна за другой то можно переход на ячейку вниз добавить при изменении значения)
Если так будет очень трудоемко то надо ждать развития технологий и управление силой мысли)
Юрий М, кажется я из Вашего где то на форуме код "свиснул" :)
Изменено: Дмитрий Тарковский - 17.07.2017 22:14:30
Страницы: 1
Читают тему
Loading...