0 / 0 / 0
Регистрация: 25.12.2014
Сообщений: 34
1

Подстановка нужной суммы в excel и vba

15.10.2015, 20:48. Показов 1739. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Все вы уже не однократно спасали меня с моими разными глупыми вопросами.
Так вот еще один интересный вопрос, даже больше похоже на задачу :-)

Есть форма vba которая упрощает внесение данных в excel
Однин из разделов формы - это смета по проведенной конференции.

Во время конференции предоставлялись разные услуги.
Всегда одинаковые, Но Может быть только одна. А может быть и несколько
Услуги:
Фуршет
Аренда оборудования
Аренда зала

Сумма всегда одна 1000$ будь то одна услуга или все 3 сразу.

Я в форме прописал эти услуги и рядом с каждой сделал чекбоксы.
И когда человек ставит галочку в excel попадает 1000$
Если одна услуга - все супер.
А вот если 2 или 3 - естественно все плохо. Так как общая сумма не 1000 а 3000$

Так вот и задача:
Как сделать так, что бы при отметке галочкой к примеру сразу 3х услуг суммы разбивались таким образом, что бы выходила всё равно 1000$.

Буду очень благодарен за помощь.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2015, 20:48
Ответы с готовыми решениями:

Подсчет нужной суммы из выборки чисел в Excel 2007
Добрый день, дорогие форумчане! Помогите пожалуйста решить следующую проблему в Excel 2007: ...

vba.excel Поиск суммы отрицательных элементов
поиск суммы отрицательных элементов public sub genericArray dim mas(8,8) as integer dim str as...

VBA и Excel, подсчет суммы выбранных товаров.
Короче дело было так, моя контора посылает прайсы в Excel файле своим клиентам, так эти самые...

VBA Excel Вычисление суммы ряда по формуле
Разработать макро функцию с одним параметром “x", которая рассчитывает см рис. В функции...

4
15139 / 6413 / 1730
Регистрация: 24.09.2011
Сообщений: 9,999
15.10.2015, 23:23 2
Лучший ответ Сообщение было отмечено bishep как решение

Решение

bishep, пробуйте кликать чекбоксы и менять общую сумму.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Calc()
Dim sum#, s1#, n&, mn&, i&
  sum = TextBox4
  For i = 1 To 3
    If Controls("CheckBox" & i) Then
      n = n + 1
      mn = i
    Else: Controls("TextBox" & i) = ""
    End If
  Next
  If n Then
    s1 = Int(sum / n)
    For i = 1 To mn - 1
      If Controls("CheckBox" & i) Then
        Controls("TextBox" & i) = s1
        sum = sum - s1
      End If
    Next
    Controls("TextBox" & mn) = sum
  End If
End Sub
Вложения
Тип файла: xls Книга11.xls (39.5 Кб, 11 просмотров)
1
0 / 0 / 0
Регистрация: 25.12.2014
Сообщений: 34
20.10.2015, 22:07  [ТС] 3
Привет. Все очень классно работает на вашем примере. Сегодня пытался впмсать то де на свою форму на которой много textbox-ов. И как результат либо ошибка, либо вставляет суммы не в совершенно другие textbox. Как можно привязать определенные textbox в коде?
Еще раз очень благодарен.
0
15139 / 6413 / 1730
Регистрация: 24.09.2011
Сообщений: 9,999
20.10.2015, 22:33 4
bishep, я могу объяснить логику, а Вы сами решайте - подгонять форму под эту логику или логику под форму.
Чекбоксы имеют имена CheckBox1, CheckBox2, CheckBox3, соответствующие им текстбоксы TextBox1, TextBox2, TextBox3.
В первом цикле (стр. 4-10) просматриваются чекбоксы. Если чекбокс выключен, соотв. текстбокс очищается. Подсчитывается число включенных чекбоксов n и номер последнего включенного чекбокса mn.
В стр. 13-19 происходит заполнение текстбоксов.
Зачем нужен mn - текстбокс номер mn заполняется не округленной долей суммы s1, как все предыдущие, а разностью общей суммы и суммы предыдущих текстбоксов. Так достигается точное соответствие общей суммы и суммы текстбоксов.
Для другого кол-ва чекбоксов и текстбоксов достаточно поменять число 3 в стр. 4. Но нумерация контролов должна быть от 1 и непрерывной.
0
0 / 0 / 0
Регистрация: 25.12.2014
Сообщений: 34
29.10.2015, 19:31  [ТС] 5
Спасибо за ответ. Все получилось.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.10.2015, 19:31
Помогаю со студенческими работами здесь

Vba excel windows и vba excel Mac Os - Макинтош корявит шрифт
Всем привет, столкнулся с такой ситуацией. Макросы написаны на Excel 2016 Windows. Когда файл...

Выбор нужной папки по маске и подстановка названия выбранной папки в путь в bat файле
Здравствуйте! Есть папка dist содержащая папки с дистрибутивами 1С вида: dist\8.3.5.1186 ...

Выборка нужного количества до нужной суммы
Здравствуйте, сам уже долго с этим бьюсь и есть пару решений, которые не буду публиковать тут дабы...

Подбор нужной суммы из заданных чисел С Повторением
Добрый день! Прошу помочь: ищу способ подобрать сумму из массива чисел с возможностью повторения...

Задача подбора слагаемых для нужной суммы
Нужно посчитать, каким количеством способов можно подобрать сумму, равную 18, используя следующие...

Memo поиск нужной суммы из нескольких чисел
Доброго времени товарищи! В проекте потребовалось реализовать такую штуку: К примеру в memo...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru