Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2009, 23:59   #11
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Если тебе уж так хочется считывать значения ячеек в массив, то это делается проще:
Код:
Sub test()
    arr = [f4:n15].Value    ' все значения диапазона считались в массив' 
    MsgBox arr(7, 2)    ' выводим значение ячейки G10'
End Sub
Цитата:
что бы при вводе числа, ему, числу, автоматом присваивалась переменная
Валера, изучай основы программирования - из-за их незнания все твои вопросы.

Числу не может быть присвоена переменная.
В переменную может быть занесено число.

Цитата:
получил переменную per(1,1)
Dim per(2000, 15) As Long - это не переменная. Это массив.

На то пошло, использовал бы что-то вроде этого:
Код:
Private Sub Workbook_SheetChange(ByVal sh As Object, ByVal Target As Excel.Range)
    Dim per(2000, 15) As Long
    per(Target.Row, Target.Column) = Target
End Sub
К тому же, после завершения работы макроса Workbook_SheetChange массив Dim per(2000, 15) будет уничтожен, так как ты объявил его внутри процедуры. Соответственно, все занесённые в него значения потеряются.
EducatedFool вне форума Ответить с цитированием
Старый 11.02.2009, 00:20   #12
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Числу не может быть присвоена переменная.
Ты меня не понял или я не так выразился, переменная уже есть, а ее индексы(строится массив), смотри пример
Код:
1 DATA 17,26,30,31,32,40
....................................
278 DATA 9,14,31,32,34,40
DIM A%(400, 45)
FOR I = 1 TO 278
FOR J = 1 TO 6
READ P: A%(I, P) = P
Вот из ряда чисел в оп. DATA, получаем массив A%(I, P) {A%(1,17), A%(1,26),...... A%(278,9)}

Последний раз редактировалось valerij; 11.02.2009 в 01:21.
valerij вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему не работает цикл????? Marsik Помощь студентам 2 22.06.2008 14:16
Картинка появляется по нажатию кнопки! MAKEDON Общие вопросы Delphi 3 13.12.2007 20:17
Картинка появляется по нажатию кнопки! MAKEDON Общие вопросы Delphi 3 12.12.2007 22:49
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 01:34