появление 1 в ячейке при нажатии мышкой

Автор bob606, 8 февраля 2017, 17:32

0 Пользователи и 1 гость просматривают эту тему.

bob606

Здраствуйте.

Вопрос:
как сделать так чтобы при нажатии мышкой на ячейку, в этой ячейке появлялась "1"?

Или вместо "1" галочка. Но чтобы галочки можно было подсуммировать в конце ряда.

Заранее спасибо.

JohnSUN

#1
Добро пожаловать на форум!
Очень ты во-время с этим вопросом...
Тут в последнее время обычно как раз переспрашивают о темах, на которые отвечали пять лет назад. Ну, полоса такая пошла...
И твоему вопросу - столько же. Вот здесь тебе будут и единички, и закрашивание ячеек
(Приложенный файл из-за давности был удален, но код в сообщении должен быть рабочим)

PS. Повезло тебе - даже тот файл нашелся.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

bob606

#2
Спасибо за молниеносную реакцию!
Выключили безопасность, и попробовали Ваш макрос, работает!

Теперь такой вопрос, в приложении наша таблица, необходимо чтобы при нажатии на ячейку там появлялась "1" и можно цвет какой то легкий.

Как создать такой макрос? Ваш можно притулить в нее?

JohnSUN

Формат XLSX принципиален? Кто-то будет это открывать в Экселе? Это плохо...

Какова задача этой формы? Продажи за день (за смену)? В принципе, это действительно можно сделать в таблице, но это не рационально.
Такая таблица - только часть процесса.
Ну, давай пересчитаем все моменты, которые компьютер должен был бы обеспечить:
1. Инвентаризация. Тупо пересчитать остатки всего-всего, что есть на прилавке, под прилавком, в подсобке и в кассе на начало работы программы (на начало квартала, на начало рабочего дня) - и легко и быстро все эти количества затолкать в машину.
2. Приход. Получить две коробки кофе, ящик вафельных трубочек и 15 кг муки - запомнить когда привезли и кто принял, приплюсовать к остаткам.
3. Заказ - отметить два лате (и два стаканчика), шоколадку, круасан - насчитать 132, получить оплату, дать сдачу - перенести заказ в расход: списать проданное, деньги приплюсовать
4. Закрытие смены - та же инвентаризация, но по короткому варианту, просто сверка: не все-все-все, а только те позиции, по которым сегодня были движения - проверить кассу и правильность остатков по позициям, которые сегодня были в работе.
5. Инкассация - ну, это просто: пришел хозяин и забрал наличку.

Эта таблица, которую ты показал каким-то боком годится для пункта 3. Но посмотри на нее ещё раз - с ней же работать не удобно. И от того, что единичка будет выскакивать не из выпадающего списка, а просто по щелчку мышью, удобнее эта форма не станет.

Я охотно помогу в написании макроса, подскажу хитрую формулу - но участвовать в заведомо провальном проекте, сорри, не хочу.

По твоим вопросам:
Цитата: bob606 от  8 февраля 2017, 17:32
как сделать так чтобы при нажатии мышкой на ячейку, в этой ячейке появлялась "1"?
В принципе, это уже сделано - выпадающий список ничем не хуже "просто щелчка".
Цитата: bob606 от  8 февраля 2017, 17:32
Или вместо "1" галочка. Но чтобы галочки можно было подсуммировать в конце ряда.
Одно другому не мешает. В ячейке может быть единичка, а за счет формата вида [>0]"√";[<0]"";"" будут отображаться "галочки"
Цитата: bob606 от  9 февраля 2017, 13:24
Как создать такой макрос? Ваш можно притулить в нее?
Притулить можно, но это её не улучшит (см. объяснения по поводу этой таблицы в начале сообщения)
И не "выкай" тут, не ссорились пока...
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

bob606


JohnSUN

А 1-2-4-5, значит, проигнорировать? Ты, видимо, пропустил или не понял эти слова
Цитата: JohnSUN от 10 февраля 2017, 10:29
участвовать в заведомо провальном проекте, сорри, не хочу.
Если делать - то всё сразу, тратить время на отдельные самостоятельные куски, чтобы потом, когда начнут создаваться соседние участки, опять возвращаться к уже сделанному и подправлять в соответствии с новыми условиями, и ещё, и ещё, и ещё раз... Для программиста на ставке или почасовке это может быть хорошим развлечением. А для его работодателя - чудесной дыркой, куда практически без всякой отдачи утекают средства.
Я не могу и не хочу транжирить свою жизнь на такую ерунду

А если делать все пять пунктов (и шестой-седьмой-... и другие), то лучше сразу понять, что это будет не макрос на StarBasic, а программа на "нормальном" языке программирования, с базой данных, с современным пользовательским интерфейсом.
Basic нужен только для внесения небольших дополнений в уже существующий инструментарий офиса, а не для создания полнофункциональных учетных систем.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне