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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2013, 11:18   #1
Kirja23
Пользователь
 
Регистрация: 05.10.2012
Сообщений: 21
По умолчанию среднее значенее

хотелось бы востановить свою тему.....

Доброго утра всем!!!

следующее задание:

в столбце Б находятся наименование продуктов (Вилка, Ложка, Тарелка), в столбце C находится их количество (10,12,120), в столбце Е находятся наименование продуктов, а в столбце F их их среднее значенее, т.е. Б1:Вилка Б2:Вилка Б3:Ложка; C1:10 С2:10 С3:2; Е2:Вилка, Е3:Ложка; F2: 10 (т.е. (10+10)/2) F3: 2

заранее очень благодарен!!!!!!!


наработка была, просто она работала не так как надо, поэтому не стал выставлять...

Sub test()
Dim x As Integer, Summe As Long, Anzahl As Integer, Note As Double

x = 2
Do While (Cells(x,2) <> "")
If (Cells(x, 5) = Cells(x, 2)) Then
Note = Cells(x, 3)
Summe = Summe + Note
Anzahl = Anzahl + 1
End If
x = x + 1
Loop

Cells(x, 6) = Summe / Anzahl
End Sub
Kirja23 вне форума Ответить с цитированием
Старый 14.02.2013, 19:45   #2
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

Kirja23, у вас задание для учёбы или для применения? Просто для решения одного и того же можно использовать разные средства.
Скрипт вне форума Ответить с цитированием
Старый 14.02.2013, 19:53   #3
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Формула для F2 и тяните вниз
Код:
=СУММЕСЛИ(B:B;E2;C:C)/СЧЁТЕСЛИ(B:B;E2)
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 14.02.2013, 22:49   #4
Kirja23
Пользователь
 
Регистрация: 05.10.2012
Сообщений: 21
По умолчанию

Скрипт, спасибо за ответ, решение нужно для применения.

Казанский, и вам спасибо за ответ, но формула в экселе у меня есть, хотелось бы понять как это делается в VBA.
Kirja23 вне форума Ответить с цитированием
Старый 14.02.2013, 23:21   #5
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Используйте формулы в VBA - это чаще всего самый эффективный метод:
Код:
Sub test()
With Range("E2", Cells(Rows.Count, "E").End(xlUp)).Offset(, 1)
    .Formula = "=SUMIF(B:B,E2,C:C)/COUNTIF(B:B,E2)"
    .Value = .Value
End With
End Sub
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 15.02.2013, 12:47   #6
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

Чтобы в VBA использовать названия Excel-функций на русском языке, нужно использовать команду FormulaLocal.

Пример кода:
Код:
Sub Procedure_1()

    ActiveCell.FormulaLocal = "=СУММЕСЛИ(B:B;E2;C:C)/СЧЁТЕСЛИ(B:B;E2)"

End Sub
Скрипт вне форума Ответить с цитированием
Старый 15.02.2013, 18:25   #7
Kirja23
Пользователь
 
Регистрация: 05.10.2012
Сообщений: 21
По умолчанию

Скрипт и Казанский, спасибо за помощь, пока не проверял, но подправить если что смогу сам. Спасибо.
Kirja23 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
среднее значенее Kirja23 Microsoft Office Excel 1 14.02.2013 02:55
Найти среднее арифметическое их квадратов и среднее арифметическое их модулей. (Турбо паскаль) erte Помощь студентам 1 30.10.2012 13:08
С++ Найти среднее арифметическое положительных и среднее арифметическое отрицательных чисел, минимальное по модулю число. Юрик 530 Помощь студентам 4 03.12.2011 16:26
Делфи.среднее геометрическое элементов массива.среднее арифметическое каждой строки матрицы Karrina Помощь студентам 0 06.12.2010 18:32