Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Подскажите, плз, как в Екселе сделать включение/отключение ячейки от участия в общей сумме?

248
15 февраля 2012 года
Dmitry2064
590 / / 06.12.2006
Есть несколько рядов с данными. Внизу строка ИТОГО с суммированием всех вышестоящих ячеек (т.е. как обычно, цифра, цифра, цифра... и в низу "итого"). Надо, что бы например, напротив не нужной в данный момент цифры снять галочку и она бы в сумме уже не участвовала. Как это можно реализовать?
Другими словами, должен получиться как бы список со числами, в котором можно отмечать/разотмечать пункты и отображаемая сумма, соответственно, должна меняться.

p.s. элемент "chekbox" я уже поставил рядом с каждой цифрой в соседней колонке
275
15 февраля 2012 года
pashulka
985 / / 19.09.2004
Если оставить в покое программный метод подсчёта, то после создания "флажков" свяжите их с ячейками (у родных элементов управления это Формат объекта-Элемент управления-Связь с ячейкой, а у Forms.CheckBox это свойство LinkedCell) , установите галочки напротив всех чисел, подлежащих суммированию, а затем просто используйте стандартную функцию рабочего листа =СУММЕСЛИ()

Например, если связать флажки с ячейками столбца A, а суммируемые числа будут находиться в ячейках столбца B, то формула может выглядить следующим образом :

=СУММЕСЛИ(A2:A100;ИСТИНА;B2:B100)
248
15 февраля 2012 года
Dmitry2064
590 / / 06.12.2006
ОП. есть. Спасибо. Но тут же всплыли еще два пожелания.
1. можно ли, чтобы не выскакивали слова "истина/ложь" при отметке/разотметке бокса под самой галочкой? Они появились после связывания бокса с ячейкам.
2. можно ли, что бы при снятии галки текст в соотнесенной ячейке становился бы серым (как бы "неактивным"). Будет более нагляден процесс отметки/разотметки.

p.s. понажимал галочки и тут же еще родилось пожелание. Сложно ли сказать, как сделать чекбокс "отметить все" и чекбокс "снять все отметки"?
275
15 февраля 2012 года
pashulka
985 / / 19.09.2004
1) Собственно, эти значения ИСТИНА/ЛОЖЬ, являются краеугольным камнем всего совета, так что если от них отказаться, то придётся использовать VBA, впрочем, не всё так страшно, ибо их можно просто скрыть, например :
- установив формат ячейки как ;;;
- установив цвет шрифта аналогичным цвету заливки
- тоже самое, только с помощью условного форматирования

2) Второй пункт, равно как и первый, можно реализовать с помощью условного форматирования, т.е. если значение ячейки ИСТИНА/ЛОЖЬ то можно установить цвет шрифта = цвету заливки, только в первом случае, например, выбрать белый цвет, а во втором, серый

P.S. Imho только программно, причём, если выбрать родные элементы управления (Формы) , то можно обойтись без цикла

 
Код:
Worksheets(1).CheckBoxes.Value = xlOn' xlOff

248
16 февраля 2012 года
Dmitry2064
590 / / 06.12.2006
Большое спасибо. Все проще, чем казалось (но я всегда подозревал, что для моих нужд С++'ы не нужны :))).
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог