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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2012, 22:52   #1
Георгий1959
Новичок
Джуниор
 
Регистрация: 12.02.2012
Сообщений: 6
По умолчанию как присвоить эл-ту массива число из ячейки

- совершенно не могу понять по help. По-другому: хочу внутри Sub в цикле адресоваться к ячейке № i, но конструкции вроде R2C[i], R2C(i), R2Ci и т.п. не помогают (синтаксис...). Даже Dim z as double; z=R2C1 (либо z=a2 или z=value(a2)) не срабатывают (z всё равно не получает значения из ячейки R2C1 с листа Лист1!, а последний вариант не соответствует синтаксису).
Георгий1959 вне форума Ответить с цитированием
Старый 12.02.2012, 23:12   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Расскажите побольше о задаче (желательно всю).
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 12.02.2012, 23:20   #3
Георгий1959
Новичок
Джуниор
 
Регистрация: 12.02.2012
Сообщений: 6
По умолчанию Мне нужно тупо сложить N=6 (например) чисел, но

каждое из них - например, гауссова функция. Т.е. самое тупое - написать что-то вроде "z=x(1)*exp(-a*R1C1*R1C1)+x(2)*exp(-a*R1C2*R1C2)+..., но даже в таком варианте - т.е. без необходимости обращаться к ячейке с переменным адресом - я пока без опыта программирования макросов (в VBA/Access опыт работы с формами и модулями есть) и не могу обратиться из Sub (макроса) даже к числу из ячейки с ФИКСИРОВАННЫМ АДРЕСОМ!!! Т.Е. У МЕНЯ даже очень простая конструкция z=R1C1 (это я хочу переписать число из $a$1 в значение переменной z, описанной как Double) не желает общаться (читать/писать) с ячейкой с Листа1!
Георгий1959 вне форума Ответить с цитированием
Старый 12.02.2012, 23:23   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

z=[a1]
z=cells(1,1)
ещё стандартно
z=Range("A1").value
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 12.02.2012 в 23:26.
Hugo121 вне форума Ответить с цитированием
Старый 12.02.2012, 23:26   #5
Георгий1959
Новичок
Джуниор
 
Регистрация: 12.02.2012
Сообщений: 6
По умолчанию ДА! Действительно, оказалось просто! СПАСИБУЩЕ!

Прямо щас и попробую. Т.е. вместо Вашей "1" можно ведь, сессно, и var типа z=cells(i,j) написать?

Последний раз редактировалось Георгий1959; 12.02.2012 в 23:31.
Георгий1959 вне форума Ответить с цитированием
Старый 12.02.2012, 23:30   #6
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Ещё советую посмотреть п.P

http://www.msoffice.nm.ru/faq/macros...eous.htm#faq14


P.S.

z=cells(n,m)
z=Range("A" & n).value
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 12.02.2012, 23:37   #7
Георгий1959
Новичок
Джуниор
 
Регистрация: 12.02.2012
Сообщений: 6
По умолчанию Не работает вот так: x(1..6)=Range("A1:A6").Value

- не компилирует. Между 1 и 6 ожидает LIST SEPARATOR [разделителя списка] (: ; , To - не подходят)
Георгий1959 вне форума Ответить с цитированием
Старый 12.02.2012, 23:40   #8
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

В массив берите так:
x=Range("A1:A6").Value
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 12.02.2012, 23:44   #9
Георгий1959
Новичок
Джуниор
 
Регистрация: 12.02.2012
Сообщений: 6
По умолчанию

СПАСИБО ЗА ПОМОЩЬ. Так я тоже пробовал, но результат - Can't assign to array. Поэлементно работает, MANY THANKS!!!

Последний раз редактировалось Георгий1959; 12.02.2012 в 23:48.
Георгий1959 вне форума Ответить с цитированием
Старый 12.02.2012, 23:50   #10
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Как x объявили?

Код:
Sub tt()
Dim x()
x = Range("A1:A6").Value
MsgBox x(2, 1)
End Sub
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из ячейки содержащей текст и число извлечь только число? АННА-ЕАО Microsoft Office Excel 35 02.12.2016 23:16
Как присвоить новому листу значение определенной ячейки clever77 Microsoft Office Excel 9 16.04.2011 06:14
Как присвоить ячейке с данными число? Pecnekm Microsoft Office Excel 44 06.04.2011 16:03
Как в формуле одной ячейки присвоить значение другой? Эдгар Microsoft Office Excel 10 06.10.2008 15:00
Как разделить число и текст в одной ячейки на две ячейки. neboskreb Microsoft Office Excel 2 15.04.2008 19:39