Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > сумма значений ячеек


Автор: Cashey 23.6.2012, 22:46
задача простая. надо подсчитать сумму значений ячеек. сложность в том, что книга большая, а нужные значений находятся ровно через 67 строчек каждое.

сделал так:
Код
Windows("report_arm-lub.xls").Activate
Dim i As Long
Sheets("Лист1").Cells(11, 14).Value = 0
For i = 13 To 11269 Step 67
Sheets("Лист1").Cells(11, 14).Value = Sheets("Лист1").Cells(i, 9).Value + Sheets("Лист1").Cells(11, 14).Value
Next i

но вываливается с ошибкой Subscript out of range

I need help

Автор: Akina 23.6.2012, 23:10
Цитата(Cashey @  23.6.2012,  23:46 Найти цитируемый пост)
вываливается с ошибкой Subscript out of range

В какой строке?

Автор: Cashey 23.6.2012, 23:52
Sheets("Лист1").Cells(11, 14).Value = Sheets("Лист1").Cells(i, 9).Value + Sheets("Лист1").Cells(11, 14).Value

Автор: Данкинг 24.6.2012, 00:03
Вообще у меня нормально работает и сумму считает:
Код

Sub as11()
ActiveSheet.Cells(1, 1).Value = 0
For i = 13 To 11269 Step 67
 ActiveSheet.Cells(1, 1).Value = ActiveSheet.Cells(i, 1).Value + ActiveSheet.Cells(1, 1).Value
Next i
End Sub


Автор: Cashey 24.6.2012, 10:47
Цитата(Данкинг @ 24.6.2012,  01:03)
Вообще у меня нормально работает и сумму считает:
Код

Sub as11()
ActiveSheet.Cells(1, 1).Value = 0
For i = 13 To 11269 Step 67
 ActiveSheet.Cells(1, 1).Value = ActiveSheet.Cells(i, 1).Value + ActiveSheet.Cells(1, 1).Value
Next i
End Sub

Да, с ActiveSheet работает. Не понял почему конструкция Sheets("Лист1") косячная, но это уже не имеет значения. Спасибо.

Автор: Данкинг 24.6.2012, 10:58
Цитата(Cashey @  24.6.2012,  11:47 Найти цитируемый пост)
Не понял почему конструкция Sheets("Лист1") косячная, но это уже не имеет значения. 

Не знаю, я обычно использую Actevsheet. smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)