powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите найти ошибку в цикле
25 сообщений из 52, страница 1 из 3
Помогите найти ошибку в цикле
    #36311798
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SumPer1 = 0
SumNed1 = 0
SumPer2 = 0
SumNed2 = 0
If bwbKontrol1 Then
For i = 25 To wbKontrol1.Worksheets("Total").UsedRange.Rows.Count
SumPer1 = SumPer1 + wbKontrol1.Worksheets.Item("Total").Cells(i, 6).Value
SumNed1 = SumNed1 + wbKontrol1.Worksheets.Item("Total").Cells(i, 5).Value
Next i
End If
If bwbKontrol2 Then
For v = 25 To wbKontrol2.Worksheets("Total").UsedRange.Rows.Count
SumPer2 = SumPer2 + wbKontrol2.Worksheets.Item("Total").Cells(v, 6).Value
SumNed2 = SumNed2 + wbKontrol2.Worksheets.Item("Total").Cells(v, 5).Value
Next v
End If
OPS.Worksheets.Item("Data input Wastes & Losses").Cells(30, 9 + (dDate - dFirstDate)).Value = SumPer1 + SumPer2
OPS.Worksheets.Item("Data input Wastes & Losses").Cells(31, 9 + (dDate - dFirstDate)).Value = SumNed1 + SumNed2


нули получаются, вместо значений из файла
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311828
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Точно в Cells(n, 6/5).Value числа?
Ну и ещё UsedRange с первой ячейки начинается?
Советую в код понаставлять Dubug.Print, например
Код: plaintext
1.
2.
3.
4.
For i =  25  To wbKontrol1.Worksheets("Total").UsedRange.Rows.Count
Debug.Print SumPer1
Debug.Print wbKontrol1.Worksheets.Item("Total").Cells(i,  6 ).Value
SumPer1 = SumPer1 + wbKontrol1.Worksheets.Item("Total").Cells(i,  6 ).Value
увидишь, где нули появляются, да и были ли вообще значения в цикле.
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311830
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Debug, конечно...
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311849
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я по F8 смотрела, нет значений в цикле, хотя фактически в файлах значения есть. причем цикл он не проходит даже, в чем причина понять не могу. то есть каждая строка по одному разу и спускается вниз по коду. поиск начинается со строки 25 до UsedRange.Rows.Count
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311886
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
b wbKontrol1 -?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311977
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это флаг, если файл существует
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311996
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну флаг-то флаг, а б в начале не лишнее?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36311999
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что вначале? обнуление?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312008
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bwbKontrol1 <> wbKontrol1
bwbKontrol2 <> wbKontrol2
это правильно или описка?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312029
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И вот это значение (dDate - dFirstDate) проверьте, что получается.
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312032
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
откуда эти строки? bwbKontrol 1,2 это флаги, а wbKontrol 1,2 это сами файлы, тут все правильно.
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312035
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя если не проходит цикл, значит wbKontrol1.Worksheets("Total").UsedRange.Rows.Count меньше 26 :)
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312036
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это тоже работает, косяк где-то в самом цикле
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312040
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121Хотя если не проходит цикл, значит wbKontrol1.Worksheets("Total").UsedRange.Rows.Count меньше 26 :)


первый раз он цикл проходит, но дальше благополучно из него выходит, а значение может быть в следующей строке. то есть получается, что по 25 строке он проходит в обоих файлах, там оказываются нули и в итоге он мне в отчет эти нули и заночит, хотя реально значения должны суммироваться по всем заполненным строкам по 5 и 6 столбцу
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312050
m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m
Гость
Как для wbKontrol1(2) присвоено значение? Как объявлено? Есть ли On Error Resume Next в коде ?
Попробуйте в самой книге wbKontrol1(2) получить значение для
Worksheets.("Total").UsedRange.Rows.Count
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312051
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так сколько wbKontrol1.Worksheets("Total").UsedRange.Rows.Count ?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312077
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mКак для wbKontrol1(2) присвоено значение? Как объявлено? Есть ли On Error Resume Next в коде ?
Попробуйте в самой книге wbKontrol1(2) получить значение для
Worksheets.("Total").UsedRange.Rows.Count

Есть и обработка ошибок и с wbKontrol1(2) все в порядке, так как файлы открываются. почему-то не реагирует на Next i и Next j, поэтому и выводит нули. почему может не реагировать? может быть у меня сами циклы логически не правильно описаны?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312079
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121Так сколько wbKontrol1.Worksheets("Total").UsedRange.Rows.Count ?

а как посмотреть?
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312115
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Debug.Print wbKontrol1.Worksheets("Total").UsedRange.Rows.Count
или
x = wbKontrol1.Worksheets("Total").UsedRange.Rows.Count
Msgbox x
или
Msgbox wbKontrol1.Worksheets("Total").UsedRange.Rows.Count
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312197
m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m
Гость
Выложите пример, мы так будем переписываться до НГ
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312285
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Oksana SlonevskayaHugo121Так сколько wbKontrol1.Worksheets("Total").UsedRange.Rows.Count ?

а как посмотреть?

первый проход как раз 25, второй раз цикл не проходит
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312292
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Маловато будет :)
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312303
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
так и должно быть 25, начинаем ведь с 25 строки, при втором проходе цикла была бы 26 и так далее, пока есть значения....
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312338
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wbKontrol1.Worksheets("Total").UsedRange.Rows.Count - это предел, к чему стремится i.
For i = 25 to 250
MsgBox i
Next
...
Рейтинг: 0 / 0
Помогите найти ошибку в цикле
    #36312363
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121wbKontrol1.Worksheets("Total").UsedRange.Rows.Count - это предел, к чему стремится i.
For i = 25 to 250
MsgBox i
Next


при всей отработке фойла выдавало сообщения, что i=25, опять же по тому, что цикл проходит только один раз. я не пойму - почему???? может быть next i,next v не в том месте стоит?
...
Рейтинг: 0 / 0
25 сообщений из 52, страница 1 из 3
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите найти ошибку в цикле
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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