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

Вход

Регистрация

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

 

= Мир MS Excel/Сохранить результаты после пересчета листа. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Сохранить результаты после пересчета листа.
Sabalt Дата: Среда, 12.12.2012, 13:39 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
Здравствуйте!

В таблице есть некий массив со случайными значениями. (B1:K1)
Значения, естественно, обновляются при пересчете.
Нужно выполнить определенное количество пересчетов листа, например 10, и вывести среднее значение каждой ячейки в ячейку ниже.
Вручную это делалось бы так:
Клавиша F9, сохранить результаты ячеек B1:K1 в диапазон B2:K2, еще раз клавиша F9, сохранить результаты ячеек B1:K1 в диапазон B3:K3 и так 10 раз.
Затем, подсчитать среднее значение диапазонов B1:B10, C1:C10, D1:D10 и т.д.

Я так понимаю, решается только макросом.
К сообщению приложен файл: 8042980.xls (17.0 Kb)
 
Ответить
СообщениеЗдравствуйте!

В таблице есть некий массив со случайными значениями. (B1:K1)
Значения, естественно, обновляются при пересчете.
Нужно выполнить определенное количество пересчетов листа, например 10, и вывести среднее значение каждой ячейки в ячейку ниже.
Вручную это делалось бы так:
Клавиша F9, сохранить результаты ячеек B1:K1 в диапазон B2:K2, еще раз клавиша F9, сохранить результаты ячеек B1:K1 в диапазон B3:K3 и так 10 раз.
Затем, подсчитать среднее значение диапазонов B1:B10, C1:C10, D1:D10 и т.д.

Я так понимаю, решается только макросом.

Автор - Sabalt
Дата добавления - 12.12.2012 в 13:39
Sabalt Дата: Среда, 12.12.2012, 14:22 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
К сожалению, не смогу сам написать такой макрос. Не сложно ли будет помочь?
 
Ответить
СообщениеК сожалению, не смогу сам написать такой макрос. Не сложно ли будет помочь?

Автор - Sabalt
Дата добавления - 12.12.2012 в 14:22
KuklP Дата: Среда, 12.12.2012, 14:51 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
[vba]
Code
Public Sub www()
     Dim i&
     For i = 1 To 10
         Cells(i + 1, 2).Resize(, 10).Value = [b1:k1].Value
         [b1:k1].Calculate
     Next
     [b12:k12].Formula = "=AVERAGE(R[-10]C:R[-1]C)"
End Sub
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
Сообщение[vba]
Code
Public Sub www()
     Dim i&
     For i = 1 To 10
         Cells(i + 1, 2).Resize(, 10).Value = [b1:k1].Value
         [b1:k1].Calculate
     Next
     [b12:k12].Formula = "=AVERAGE(R[-10]C:R[-1]C)"
End Sub
[/vba]

Автор - KuklP
Дата добавления - 12.12.2012 в 14:51
Sabalt Дата: Среда, 12.12.2012, 15:42 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
KuklP, спасибо большое! А можно скрыть промежуточные результаты, а выводить итоговое значение в диапазон B2:K2 ?
 
Ответить
СообщениеKuklP, спасибо большое! А можно скрыть промежуточные результаты, а выводить итоговое значение в диапазон B2:K2 ?

Автор - Sabalt
Дата добавления - 12.12.2012 в 15:42
KuklP Дата: Среда, 12.12.2012, 15:52 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Можно:-) Чуть позже. Я пока занят.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеМожно:-) Чуть позже. Я пока занят.

Автор - KuklP
Дата добавления - 12.12.2012 в 15:52
KuklP Дата: Среда, 12.12.2012, 17:07 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Можно вообще без Вашей строки с формулами:
[vba]
Code
Public Sub www()
     Dim i&, a(1 To 10, 1 To 10), j&, b(1 To 1, 1 To 10)
     Randomize Timer
     For i = 1 To 10
         For j = 1 To 10
             a(i, j) = Int(Rnd() * 10 + 1)
         Next j, i
         For i = 1 To 10
             b(1, i) = Application.Average(Application.Index(a, 0, i))
         Next
         [b2:k2].Formula = b
End Sub
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеМожно вообще без Вашей строки с формулами:
[vba]
Code
Public Sub www()
     Dim i&, a(1 To 10, 1 To 10), j&, b(1 To 1, 1 To 10)
     Randomize Timer
     For i = 1 To 10
         For j = 1 To 10
             a(i, j) = Int(Rnd() * 10 + 1)
         Next j, i
         For i = 1 To 10
             b(1, i) = Application.Average(Application.Index(a, 0, i))
         Next
         [b2:k2].Formula = b
End Sub
[/vba]

Автор - KuklP
Дата добавления - 12.12.2012 в 17:07
Michael_S Дата: Среда, 12.12.2012, 19:47 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
А можно и без макросов. То. что выделено желтым - для проверки, в расчетах не участвует. Нужна доп.Ячейка - L1 (зеленая) и включить итерации.

зы.Вообще-то нужно больше условий, так, как ;СЛУЧМЕЖДУ срабатывает при при каждом изменении на листе.
К сообщению приложен файл: Novithok.xls (34.5 Kb)


Сообщение отредактировал Michael_S - Среда, 12.12.2012, 20:04
 
Ответить
СообщениеА можно и без макросов. То. что выделено желтым - для проверки, в расчетах не участвует. Нужна доп.Ячейка - L1 (зеленая) и включить итерации.

зы.Вообще-то нужно больше условий, так, как ;СЛУЧМЕЖДУ срабатывает при при каждом изменении на листе.

Автор - Michael_S
Дата добавления - 12.12.2012 в 19:47
Sabalt Дата: Среда, 12.12.2012, 20:29 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
KuklP, спасибо большое! Буду адаптировать.
 
Ответить
СообщениеKuklP, спасибо большое! Буду адаптировать.

Автор - Sabalt
Дата добавления - 12.12.2012 в 20:29
Sabalt Дата: Среда, 12.12.2012, 20:37 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
Michael_S, спасибо! Ваш вариант тоже может пригодиться.


Сообщение отредактировал Sabalt - Среда, 12.12.2012, 20:37
 
Ответить
СообщениеMichael_S, спасибо! Ваш вариант тоже может пригодиться.

Автор - Sabalt
Дата добавления - 12.12.2012 в 20:37
Michael_S Дата: Среда, 12.12.2012, 21:15 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Он не доделанный. Там слишком много всяких проверок нужно... мне надоело до ума доводить, это просто для ознакомления с возможностями Excel.
 
Ответить
СообщениеОн не доделанный. Там слишком много всяких проверок нужно... мне надоело до ума доводить, это просто для ознакомления с возможностями Excel.

Автор - Michael_S
Дата добавления - 12.12.2012 в 21:15
Sabalt Дата: Четверг, 13.12.2012, 17:49 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
KuklP, как переделать Ваш последний макрос, чтобы формула вводилась и оставалась на листе (просто это может быть не только случайное число). У меня большая таблица и пересчитываются несколько листов.
Вообще идея была делать несколько десятков пересчетов (F9) и сохранения среднего значения для нескольких разных диапазонов. Т.е. как первый макрос, только без промежуточных результатов.
 
Ответить
СообщениеKuklP, как переделать Ваш последний макрос, чтобы формула вводилась и оставалась на листе (просто это может быть не только случайное число). У меня большая таблица и пересчитываются несколько листов.
Вообще идея была делать несколько десятков пересчетов (F9) и сохранения среднего значения для нескольких разных диапазонов. Т.е. как первый макрос, только без промежуточных результатов.

Автор - Sabalt
Дата добавления - 13.12.2012 в 17:49
KuklP Дата: Четверг, 13.12.2012, 19:49 | Сообщение № 12
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Quote (Sabalt)
KuklP, как переделать Ваш последний макрос
Никак. Надо писать новый. Но мне это не интересно. И времени нет играть с Вами в кошки-мышки, и не настолько мне скучно. Перечитайте свой первый пост. Хотите - ждите. Может кто скуки ради и наваяет вам чего. А Вы в очередной раз поменяете условия. Без меня.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
Сообщение
Quote (Sabalt)
KuklP, как переделать Ваш последний макрос
Никак. Надо писать новый. Но мне это не интересно. И времени нет играть с Вами в кошки-мышки, и не настолько мне скучно. Перечитайте свой первый пост. Хотите - ждите. Может кто скуки ради и наваяет вам чего. А Вы в очередной раз поменяете условия. Без меня.

Автор - KuklP
Дата добавления - 13.12.2012 в 19:49
Sabalt Дата: Четверг, 13.12.2012, 20:14 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 26
Репутация: 0 ±
Замечаний: 0% ±

1
KuklP, благодарю. Попробую разобраться.


Сообщение отредактировал Sabalt - Четверг, 13.12.2012, 20:14
 
Ответить
СообщениеKuklP, благодарю. Попробую разобраться.

Автор - Sabalt
Дата добавления - 13.12.2012 в 20:14
  • Страница 1 из 1
  • 1
Поиск:

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