Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ошибка в Массиве код 9 - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Ошибка в Массиве код 9
lopuxi Дата: Вторник, 20.10.2015, 12:22 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
Всем добрый день.

У меня в рабочем массиве, который я изначально написал для Функции, вдруг возникла ошибка, когда я этот же массив установил в кнопку, что бы взять из него данные. Теперь он пишет ошибку с кодом 9 - Subscript out of range.

Хотя массив за недопустимый диапазон не выходит. Изначально массив ограничен 12 и счет ведется с 1 числа (Option Base 1). И за этот диапазон мы не выходим. Ошибка возникает сразу на 1 же числе.

Я прикрепляю файл, где писал код. по возможности все лишнее я из него убрал.
В файле нужно щелкнуть на ячейку "СВОДНАЯ" и запуститься UserForm, там нажать ОК и аля ошибка.

Я программист любитель, по этому многих тонкостей программирования не знаю. По этому если сможете помочь и дать развернутый ответ, и предложить решение, буду безмерно благодарен.

ошибка возникает вот в этом кусочке кода:
[vba]
Код

For i = LBound(iNumMontArr) To UBound(iNumMontArr)
    MsgBox CInt(iNumMontArr(i))  ' < ===== ОШИБКА!
    
    
    'If CInt(iNumMontArr(i)) <> 0 Then ' Массив содержащий номера тех месяцев что используются в МП
        'Year = Me.Controls("TextBoxYar_" & i).Value ' обязательный аргумент, год.
        'NumMonth = Val(Me.Controls("Label" & i).Caption)
        
        'MsgBox NumMonth & " " & Year
    'End If
Next
[/vba]

p.s.
Не могу файл прикрепить. удалил из него все... что то только можно было. И всеравно превышение на 60кб... ну кто ж такие ограничения то создает? (


О_о ...и так можно было?

Сообщение отредактировал lopuxi - Вторник, 20.10.2015, 12:37
 
Ответить
СообщениеВсем добрый день.

У меня в рабочем массиве, который я изначально написал для Функции, вдруг возникла ошибка, когда я этот же массив установил в кнопку, что бы взять из него данные. Теперь он пишет ошибку с кодом 9 - Subscript out of range.

Хотя массив за недопустимый диапазон не выходит. Изначально массив ограничен 12 и счет ведется с 1 числа (Option Base 1). И за этот диапазон мы не выходим. Ошибка возникает сразу на 1 же числе.

Я прикрепляю файл, где писал код. по возможности все лишнее я из него убрал.
В файле нужно щелкнуть на ячейку "СВОДНАЯ" и запуститься UserForm, там нажать ОК и аля ошибка.

Я программист любитель, по этому многих тонкостей программирования не знаю. По этому если сможете помочь и дать развернутый ответ, и предложить решение, буду безмерно благодарен.

ошибка возникает вот в этом кусочке кода:
[vba]
Код

For i = LBound(iNumMontArr) To UBound(iNumMontArr)
    MsgBox CInt(iNumMontArr(i))  ' < ===== ОШИБКА!
    
    
    'If CInt(iNumMontArr(i)) <> 0 Then ' Массив содержащий номера тех месяцев что используются в МП
        'Year = Me.Controls("TextBoxYar_" & i).Value ' обязательный аргумент, год.
        'NumMonth = Val(Me.Controls("Label" & i).Caption)
        
        'MsgBox NumMonth & " " & Year
    'End If
Next
[/vba]

p.s.
Не могу файл прикрепить. удалил из него все... что то только можно было. И всеравно превышение на 60кб... ну кто ж такие ограничения то создает? (

Автор - lopuxi
Дата добавления - 20.10.2015 в 12:22
Manyasha Дата: Вторник, 20.10.2015, 12:43 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
lopuxi, пересохраните, например, в xlsb и заархивируйте.
По Вашему маленькому кусочку кода вообще ничего не понятно.


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеlopuxi, пересохраните, например, в xlsb и заархивируйте.
По Вашему маленькому кусочку кода вообще ничего не понятно.

Автор - Manyasha
Дата добавления - 20.10.2015 в 12:43
lopuxi Дата: Вторник, 20.10.2015, 12:54 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
пересохраните, например, в xlsb и заархивируйте.

К сожалению я удалил все что только мог в своем файле, он сжался до 139кб... осталась только форма, без лишних элементов, два листа книги которые нельзя удалить, но они практически пусты... и сам код.
Все... я даже загоняю в архив файл, но до 100кб он не сжимается...
пипец


О_о ...и так можно было?

Сообщение отредактировал lopuxi - Вторник, 20.10.2015, 12:54
 
Ответить
Сообщение
пересохраните, например, в xlsb и заархивируйте.

К сожалению я удалил все что только мог в своем файле, он сжался до 139кб... осталась только форма, без лишних элементов, два листа книги которые нельзя удалить, но они практически пусты... и сам код.
Все... я даже загоняю в архив файл, но до 100кб он не сжимается...
пипец

Автор - lopuxi
Дата добавления - 20.10.2015 в 12:54
nilem Дата: Вторник, 20.10.2015, 13:34 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Массив iNumMontArr не двумерный случайно?
С листа его берете?


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеМассив iNumMontArr не двумерный случайно?
С листа его берете?

Автор - nilem
Дата добавления - 20.10.2015 в 13:34
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!