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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2010, 17:39   #1
katherinebere
Новичок
Джуниор
 
Аватар для katherinebere
 
Регистрация: 26.04.2010
Сообщений: 7
По умолчанию Вопрос по Макросам: свободно заполняемые массивы данных в формулах

Необходимо в рамках дипломной работы написать ряд макросов для Excel (2007, если что), так вот в них необходимо свободное заполнение данных, если так можно выразиться.
Понимаю, что звучит непонятно, поэтому объясню на примере:
Код:
=СУММ(C82:C98)
но это фиксированный массив, и елси его запихнуть макрос, то действия будут выполнятся строго только с ним (ну или можно учесть относительные ссылки, но все равно строго зависимая связь)

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

пы.сы. формула суммы приведена для примере, знаю что такая кнопка есть)

уж помогите блондинке))))

Последний раз редактировалось katherinebere; 26.04.2010 в 17:48.
katherinebere вне форума Ответить с цитированием
Старый 26.04.2010, 18:12   #2
nilem
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 616
По умолчанию

Может быть, как-то так:

Код:
Sub сумма()
Dim RNG As Range

Set RNG = Application.InputBox("Выделите диапазон", Type:=8)
MsgBox "Сумма значаний ячеек в диапазоне " & _
    Application.WorksheetFunction.Sum(RNG)

End Sub
nilem вне форума Ответить с цитированием
Старый 26.04.2010, 19:10   #3
katherinebere
Новичок
Джуниор
 
Аватар для katherinebere
 
Регистрация: 26.04.2010
Сообщений: 7
Печаль

Может просто немного непонятно я выразилась...
вот пример моего макроса:
Код:
Sub Пример()
'
' Пример Макрос
'

'
    Range("G14").Select
    ActiveCell.FormulaR1C1 = "=CORREL(R[-3]C[-4]:R[12]C[-4],R[-3]C[-3]:R[12]C[-3])"
    
End Sub
но ячейки фиксированные.. хотя может я просто не до конца поняла предыдущего автора((
katherinebere вне форума Ответить с цитированием
Старый 26.04.2010, 19:19   #4
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Работайте с Selection! Пример:
Код:
For Each cell In Selection
cell.Value = "1"
Next cell
motorway вне форума Ответить с цитированием
Старый 26.04.2010, 19:55   #5
nilem
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 616
По умолчанию

Можно и Selection. А если 2 диапазона? Вот для корреляции:

Код:
Sub корреляция()
Dim rng1 As Range, rng2 As Range

Set rng1 = Application.InputBox("Выделите 1-й диапазон", Type:=8)
Set rng2 = Application.InputBox("Выделите 2-й диапазон", Type:=8)
    If rng1.Cells.Count <> rng2.Cells.Count Then MsgBox _
            "Диапазоны не совпадают": Exit Sub
[g14] = "=CORREL(" & rng1.Address & "," & rng2.Address & ")"
End Sub
По-моему, тот случай, когда "выполнение макроса проводилось только с теми, которые выделяет пользователь (совершенно произвольно)". Не так?
nilem вне форума Ответить с цитированием
Старый 26.04.2010, 20:15   #6
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Если 2, можно запомнить сначала 1-ый Selection, потом второй. Дальше с ними работать. В общем, как больше нравится/подходит
motorway вне форума Ответить с цитированием
Старый 28.04.2010, 23:21   #7
katherinebere
Новичок
Джуниор
 
Аватар для katherinebere
 
Регистрация: 26.04.2010
Сообщений: 7
По умолчанию

Благодарю)
Я еще добавила "ActiveCell" и прописала условия отмены и все летает)
katherinebere вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по макросам Spenser Microsoft Office Excel 3 27.03.2010 20:06
Книга по макросам Makeeva Victoria Microsoft Office Excel 1 19.03.2010 14:07
У меня вопрос по макросам. Chester Помощь студентам 0 04.08.2009 16:59
корректное отображение импортированных данных в формулах Excel petrov_ja Помощь студентам 1 03.03.2009 00:27
Общий доступ к файлу с макросам в Эксель grenles Microsoft Office Excel 11 30.06.2008 16:38