Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130

Определить загруженность процессора

17.10.2024, 19:02. Показов 2827. Ответов 53
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте дорогие специалисты.
появилась потребность определять загруженность процессора.
и например число загрузки в процентах(хотя можно и не в процентах) выводить допустим в ячейку D1
перерыла интернет, но решения не нашла именно с помощью VBA сделать такое.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.10.2024, 19:02
Ответы с готовыми решениями:

Загруженность процессора?
Уже нашёл ответ на Си. Помогите, пожалуйста, с "переводом" на Visual Basic. Ну а в идеале можно и сразу на PowerBasic :) #include...

Как только захожу в игру, загруженность процессора упирается в 100%, спустя минут 5 загруженность падает до 10-30%
Захожу я значит поиграть в Овервотч, но при заходе в игру первые 5 минут у меня загруженность процессора 90% (msi afterburner показывает...

Определить загруженность ядер процессора
Помогите определить загруженность ядер процессора (может как-нибудь получить эти данные из системы).

53
jump
 Аватар для I can
5009 / 4803 / 852
Регистрация: 13.04.2015
Сообщений: 10,060
18.10.2024, 07:19
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от testuser2 Посмотреть сообщение
ссылка

Не по теме:

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



Добавлено через 1 минуту
Цитата Сообщение от carolina199x Посмотреть сообщение
макрос выдают от 0 до 100
Я уже писал, почему так происходит.
0
1411 / 871 / 93
Регистрация: 08.02.2017
Сообщений: 3,722
Записей в блоге: 2
18.10.2024, 07:48
Цитата Сообщение от I can Посмотреть сообщение
будет требовать перевести код на VBA и написать сюда, и чтоб вывод в ячейку.
Я знаю, хотел готовый способ написать, точнее есть идея использовать метод как в скрипте Dragocas-а, делить время idle на сумму времени всех процессов, но пока времени нет.
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 15:54  [ТС]
testuser2, там visual Basic а надо VBA. я в VBA то понимаю на уровне лёгкого редактирования, а в языке visual Basic совсем сложно и надо же именно это осуществлять через excel.
Напишите пожалуйста сюда код определения загруженности для всего процессора(у у меня 8 ядер) и для каждого в отдельности. Люди может будут потом смотреть и кому то тоже пригодится.

Добавлено через 2 минуты
кстати по ссылке я уже как то видела. копировала от туда и вставляла в модуль и ничего не работало. ошибка была. наверно, потому что языки VB6 и VBA отличаются
0
1411 / 871 / 93
Регистрация: 08.02.2017
Сообщений: 3,722
Записей в блоге: 2
18.10.2024, 16:06
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Function GetCPUUsage() As Double
    Static WMI As Object 'SWbemServicesEx
    Static IdleItem As Object' SWbemObjectEx
    Static prevTotalTm#, prevIdleTm#
    Static InitFlag As Boolean
    Dim process As Object 'SWbemObjectEx
    Dim TotalTm#, deltaTotalTm#
    Dim IdleTm#, deltaIdleTm#
        
    DoEvents
    If InitFlag Then
    Else
        Set WMI = GetObject("winmgmts:\root\cimv2")
        Set IdleItem = WMI.ExecQuery("SELECT * FROM Win32_Process Where Name Like '%Idle%'").ItemIndex(0)
        InitFlag = True
    End If
    
    For Each process In WMI.ExecQuery("SELECT * FROM Win32_Process")
      With process
        TotalTm = TotalTm + CDbl(.KernelModeTime) + CDbl(.UserModeTime)
      End With
    Next
    IdleItem.Refresh_
    With IdleItem
      IdleTm = CDbl(.KernelModeTime) + CDbl(.UserModeTime)
    End With
    
    deltaTotalTm = TotalTm - prevTotalTm
    deltaIdleTm = IdleTm - prevIdleTm
    prevTotalTm = TotalTm
    prevIdleTm = IdleTm
    
    GetCPUUsage = 100 - deltaIdleTm * 100 / deltaTotalTm
End Function
Так работает.
Миниатюры
Определить загруженность процессора  
1
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 16:37  [ТС]
testuser2, вставила ваш код в модуль. нажимаю. но ничего не происходит. у вас показатели выводятся в столбцы D и далее. у меня там ничего не выводится.
я что то не так делаю?
0
jump
 Аватар для I can
5009 / 4803 / 852
Регистрация: 13.04.2015
Сообщений: 10,060
18.10.2024, 16:47
testuser2,
1
1411 / 871 / 93
Регистрация: 08.02.2017
Сообщений: 3,722
Записей в блоге: 2
18.10.2024, 16:49
Цитата Сообщение от carolina199x Посмотреть сообщение
но ничего не происходит.
У вас вопрос определить загруженность процессора, что данная функция и делает больше ни чего не должно происходить.
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 16:53  [ТС]
testuser2, нужно чтобы значения загруженности записывались я в ячейки! а ничего не записывается.
0
1411 / 871 / 93
Регистрация: 08.02.2017
Сообщений: 3,722
Записей в блоге: 2
18.10.2024, 17:02
Цитата Сообщение от carolina199x Посмотреть сообщение
нужно чтобы значения загруженности записывались я в ячейки!
Visual Basic
1
[D1] = GetCPUUsage()
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 17:03  [ТС]
у вас есть значения. я выделила красными стрелочками. а у меня таких значений макрос не показывает.
Миниатюры
Определить загруженность процессора  
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 17:07  [ТС]
вставила "[D1] = GetCPUUsage()" в конце макроса. макрос входит в работу и висит. пока не нажмёшь на стоп. но в ячейку D1 ничего не выводит
testuser2, напишите пожалуйста рабочий макрос для моего 8 ядерного процессора. модель есть на скринах. я присылала.
и чтобы показатели записывались в ячейки. для каждого ядра в отдельности 8 ячеек и 9 ячейка общая загруженность.
Пожалуйста!
0
1411 / 871 / 93
Регистрация: 08.02.2017
Сообщений: 3,722
Записей в блоге: 2
18.10.2024, 17:11
Цитата Сообщение от carolina199x Посмотреть сообщение
а у меня таких значений макрос не показывает.
Потому что надо хотябы маленько знать язык, прежде чем задавать вопрос, хотябы основы
Цитата Сообщение от carolina199x Посмотреть сообщение
напишите пожалуйста рабочий макрос для моего 8 ядерного процессора. модель есть на скринах. я присылала.
Этово я ничего не знаю, я не добрый волшебник, который все знает
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 17:29  [ТС]
testuser2, а зачем вы пишите тогда. если это безсмысленно. займитесь помощью другим. ваша помощь ничем не помогла.
Я сразу честно говорила. что дуб в этих языках, а не прикидывалась специалистом или тем кто хочет научиться! если вас так сильно оскорбляет тот факт, что надо человеку полностью помочь, то не помогайте вообще! чтобы потом не писать гневные письма выставляя попросившего помощи человека виновным в этом.
0
ᴁ ©
Эксперт MS Access
 Аватар для АЕ
4184 / 2468 / 514
Регистрация: 13.12.2016
Сообщений: 8,394
Записей в блоге: 5
18.10.2024, 21:09
Цитата Сообщение от carolina199x Посмотреть сообщение
не помогайте вообще! чтобы потом не писать гневные письма
гнев и торг позади - дальше депресняк и признание неизбежного. Между тем помогайка сам объявил свой ответ решением, тем самым послав и вас carolina199x куда подальше...
При всей комичности ситуации - я с ним согласен.testuser2,
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 22:57  [ТС]
фи, какие злые

Добавлено через 4 минуты
лучше бы взяли и написали код. чем ссориться тут
0
jump
 Аватар для I can
5009 / 4803 / 852
Регистрация: 13.04.2015
Сообщений: 10,060
18.10.2024, 23:06
Цитата Сообщение от carolina199x Посмотреть сообщение
написали код.
В 24-м сообщении код чем не нравится?
0
ᴁ ©
Эксперт MS Access
 Аватар для АЕ
4184 / 2468 / 514
Регистрация: 13.12.2016
Сообщений: 8,394
Записей в блоге: 5
18.10.2024, 23:07
Цитата Сообщение от carolina199x Посмотреть сообщение
лучше бы взяли и написали код. чем ссориться тут
я думал, что торг окончен... Ан нет.
А ссор, кроме вашей неудовлетворенности вполне очевидным вещам, я не заметил. Я ведь предвидел это все с самого начала темы. Кстати, было бы разумнее изложить для чего вам потребовалось "Определить загруженность процессора"
И именно средствами VBA. Наверняка были веские причины обвинить процессор в несостоятельности.
0
10 / 2 / 0
Регистрация: 21.04.2023
Сообщений: 130
18.10.2024, 23:13  [ТС]
АЕ, загруженность процессора потребовалось определять по причине того, что в некоторых макросах у меня код с задержкой выполнения, и чем выше загруженность мне надо чтобы задержка переключалась включая соответственную задержку. а то запустишь макрос , и если в это же время начинаешь пользоваться ноутбуком, то из за загруженности процессора вылазит ошибка и приходится запускать заново макрос. Эта ошибка именно и за загруженности процессора, проверяла в ручную.
0
jump
 Аватар для I can
5009 / 4803 / 852
Регистрация: 13.04.2015
Сообщений: 10,060
18.10.2024, 23:19
Цитата Сообщение от carolina199x Посмотреть сообщение
загруженность процессора потребовалось определять по причине того, что в некоторых макросах у меня код с задержкой выполнения, и чем выше загруженность мне надо чтобы задержка переключалась включая соответственную задержку. а то запустишь макрос , и если в это же время начинаешь пользоваться ноутбуком, то из за загруженности процессора вылазит ошибка и приходится запускать заново макрос. Эта ошибка именно и за загруженности процессора, проверяла в ручную.
Ох ты ж ё! Да тут целое костылиное царство

Добавлено через 10 секунд
А кстати, какая надежда на этот макрос, если вся работа выполняется в одном потоке?
0
ᴁ ©
Эксперт MS Access
 Аватар для АЕ
4184 / 2468 / 514
Регистрация: 13.12.2016
Сообщений: 8,394
Записей в блоге: 5
18.10.2024, 23:20
я еще в 9 посту написал причину, вы парировали....
Цитата Сообщение от carolina199x Посмотреть сообщение
нет дорогой. у меня всё оптимизировано.
а вот перечитав ваш ответ в предыдущем посту убеждаюсь, что я был прав. Не туда направляете усилия.
Оптимизируйте код, ищите зацикливания, ставьте контрольные точки, проверяйте значения переменных и т.д.
Процессор не виноват, что его используют не правильно. Когда уже у вас наступит стадия принятия?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.10.2024, 23:20

Загруженность процессора 50%
Доброго времени суток! Сегодня появилась такая проблема - svchost.exe грузит процессор на 50%. Поискал в интернете решение проблемы:...

Загруженность процессора
Доброго вечера всем! Есть ли в php что нибудь для определения текущей загрузки процессора процессами (операционка Linux 2.6)?

Повышенная загруженность процессора
Здравствуйте. Возникла проблема на ноутбуке Acer Nitro 5 - в отсутствие работы каких-либо требовательных программ загрузка ЦП колеблется в...

Не понятная загруженность процессора.!
Всем здравствуйте. Несколько дней назад возникла такая странность: Постоянно системный процесс NT Kernel & System загружает мой 4-х...

Влияет ли ОС на загруженность процессора?
Влияет ли ОС на процессор(то есть если я установлю вместо WIndows 7 Windows Xp, нагрузка на проц будет меньше?)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru