powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как найти сумму во всех ячейках периода?
13 сообщений из 13, страница 1 из 1
Как найти сумму во всех ячейках периода?
    #36367110
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите! В приложенном файле пример структуры исходного файла, в котором нужно посчитать сумму по всем ячейкам из периода. Т.е. если выбран период с 1 по 6, то находится сумма по всем ячейкам этого периода. Может че коряво написала, спрашивайте. Вот что у меня:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
 sOl =  0 
                sOl3 =  0 
                
                For t =  1  To wbBottl.Worksheets("Лист1").UsedRange.Columns.Count
                    If wbBottl.Worksheets("Лист1").Cells( 1 , t).Value = iDay And wbBottl.Worksheets("Лист1").Cells( 1 , t +  1 ).Value = iDay Then
                        OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 52 ,  9  + (dDate - dFirstDate)).Value = wbBottl.Worksheets("Лист1").Cells( 46 , t).Value + wbBottl.Worksheets("Лист1").Cells( 46 , t +  1 ).Value
                    ElseIf wbBottl.Worksheets("Лист1").Cells( 1 , t).Value >= iDay And wbBottl.Worksheets("Лист1").Cells( 1 , t +  1 ).Value <= iDay Then
                        sOl1 = sOl1 + (wbBottl.Worksheets("Лист1").Cells( 9 , t).Value + wbBottl.Worksheets("Лист1").Cells( 9 , t +  1 ).Value)
                        sOl3 = sOl3 + (wbBottl.Worksheets("Лист1").Cells( 17 , t).Value + wbBottl.Worksheets("Лист1").Cells( 17 , t +  1 ).Value)
                        
                    End If
                    
                Next t
                
                OPS.Worksheets.Item("Week Summary").Cells( 10 ,  17 ).Value = sOleina1
                OPS.Worksheets.Item("Week Summary").Cells( 11 ,  17 ).Value = sOl3
                
                
            End If
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367142
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вся проблема скорей всего в этом условии ElseIf wbBottl.Worksheets("Лист1").Cells(1, t).Value >= iDay And wbBottl.Worksheets("Лист1").Cells(1, t + 1).Value <= iDay Then

Он мне сумму считает, но не за указанный период а за весь вообще, то есть суммирует все итоги с 1 по 31 число. а должен учитывать лишь интервал (переменная iDay - номер дня из даты). остальной код не привожу, дабы не засорять тему и никого не путать.
Если в первой части условия вместо >= поставить просто =, то не считается вообще ничего - нули. Хэлп с условием
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367162
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, и не в тему. Формулой.
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367164
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не в тему, это только кусок проекта.
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367497
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana Slonevskaya,

есть такая формула - БДСУММ()
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367537
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да при чем тут формула? у меня огромнейший макрос, в одной его части мне надо из одного файла вычислить сумму за период и подставить ее в файл отчета.....эту часть я собственно тут и привела. то, как он написан сейчас, из-за условия, он не за промежуток берет сумму, а за весь месяц, то есть за все 31 день. Кто-нибудь, дайте идею, как ограничить период?????
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367780
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana Slonevskaya,

так в исходном файле через формулу БДСУММ() посчитайте нужное вам значение, а потом возьмите его для отчета.
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367788
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне не надо никаких формул, я же русским языком объясняю, что у меня отчет автоматизирован, просто условие нужно задать корректно. Кто поможет в VBA????
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367977
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Какие данные в первом ряду wbBottl.Worksheets("Лист1") ?
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36367987
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извините, в начале же есть....
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36368029
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что-то у меня пока считает только те ячейки, где нет дат :(
Точно данные и код, как в оригинале?
И вот эти переменные - sOl, sOl1, sOleina1 - это так и должны быть разные переменные?
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36368232
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana Slonevskaya,

А где в опубликовном Test.xls макрос и данные? Две строчки непонятно чего и ни одного макроса.
...
Рейтинг: 0 / 0
Как найти сумму во всех ячейках периода?
    #36375358
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeggasadОтчего же таки нельзя использовать формулы? ведь VBA (как вы пишете) тоже их может вполне успешно применять.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Sub test()
x =  2  'от
y =  5  ' до
i = Replace((y + x) /  2 , ",", ".") ' средняя
j = Replace((y - x) /  2 , ",", ".") ' отклонение от среднего по модулю
strRng1 = ActiveSheet.[B1:M1].Address(, , ,  1 ) ' диапазон дат
strRng2 = ActiveSheet.[B4:M4].Address(, , ,  1 ) ' диапазон значений
Debug.Print Evaluate("SUM((ABS(" & i & "-" & strRng1 & ")<=" & j & ")*" & strRng2 & ")")
End Sub
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как найти сумму во всех ячейках периода?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]