Индикатор выполнения VBA

Индикатор выполнения Excel VBA в Excel

Индикатор это то, что показывает нам, какая часть процесса была выполнена или завершена, когда мы запускаем большие наборы кодов, для выполнения которых требуется больше времени, мы используем индикатор выполнения в VBA, чтобы показать пользователю статус процесса, или если у нас есть несколько процессы, работающие в одном коде, мы используем индикатор выполнения, чтобы показать, какой процесс продвинулся, насколько.

Индикатор выполнения показывает процент выполненных задач, когда фактическая задача выполняется за экраном с набором инструкций, заданных кодом.

Когда выполнение кода VBA занимает много времени, пользователь беспокоится о том, как скоро он завершится. По умолчанию нам нужно ждать полного времени, чтобы выполнить задачу, но вставив индикатор выполнения, мы узнаем ход выполнения задачи. код VBAКод VBAКод VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи.читать далее.

Почти во всех компьютерных программах мы видим гистограмму выполнения, которая показывает ход выполнения задачи, которую мы выполняем, как на изображении ниже.

Индикатор

В Excel мы можем создать Progress Bar, используя кодирование VBA. Если вы когда-нибудь задумывались, как мы можем создать индикатор выполнения, то эта статья специально для вас.

Вы можете скачать этот шаблон индикатора выполнения VBA здесь — Шаблон индикатора выполнения VBA

Создайте свой собственный индикатор выполнения

Чтобы создать индикатор выполнения, нам нужно выполнить несколько шагов. Ниже приведены шаги, которые необходимо выполнить при создании гистограммы выполнения.

Шаг 1: Создайте или вставьте новую форму пользователя.

Индикатор выполнения VBA, шаг 1

Как только вы нажмете на опцию выше, вы увидите форму пользователя, как показано ниже.

Индикатор выполнения VBA Шаг 1.1

Шаг 2: нажмите F4 ключ, чтобы увидеть окно свойств VBA.

Индикатор выполнения VBA, шаг 2

На этой вкладке свойств нам нужно изменить свойства Пользовательская форма VBAПользовательская форма VBAВ VBA пользовательские формы — это настраиваемые пользовательские формы, предназначенные для приема пользовательского ввода в виде формы. Он имеет различные наборы элементов управления для добавления, такие как текстовые поля, флажки и метки.читать далее мы вставили.

Шаг 3: Измените имя пользовательской формы на UFProgressBar.

Индикатор выполнения VBA, шаг 3

Теперь мы можем ссылаться на эту пользовательскую форму с именем «UFProgressBar» во время кодирования.

Шаг 4: Измените свойство Show Model формы пользователя на FALSE.

Индикатор выполнения VBA, шаг 4

Шаг 5: Теперь настройте выравнивание пользователя в соответствии с вашими потребностями. Я изменил высоту пользовательской формы на 120 и ширину на 300.

Индикатор выполнения VBA, шаг 5
Индикатор выполнения VBA Шаг 5.1

Шаг 6: Измените заголовок пользовательской формы на «Строка состояния выполнения».

Индикатор выполнения VBA, шаг 6

Шаг 7: Теперь из панели инструментов пользовательской формы вставьте LABEL в пользовательскую форму вверху.

Индикатор выполнения VBA, шаг 7

С помощью этой метки нам нужно установить свойства метки. Удалите заголовок и сделайте его пустым, а также отрегулируйте ширину метки.

VBA ProgressBar Шаг 7.1
VBA ProgressBar Шаг 7.2

Шаг 8: Измените имя метки на «ProgessLabel».

Прогрессбар VBA Шаг 8

Шаг 9: Теперь из панели инструментов возьмите рамку и нарисуйте чуть ниже метки, которую мы вставили в предыдущих шагах. Убедитесь, что рамка находится в центре пользовательской формы.

Индикатор прогресса VBA, шаг 9

Шаг 10: Теперь нам нужно изменить некоторые свойства фрейма, чтобы он выглядел точно так же, как пользовательская форма, которую мы вставили.

Свойство 1: Измените имя фрейма на «ProgressFrame».

VBA ProgressBar Шаг 10

Свойство 2: Удалите заголовок и сделайте его пустым.

VBA ProgressBar Шаг 10.1

Свойство 3: Измените специальный эффект кадра на 6 – fmSpecialEffectBump.

VBA ProgressBar Шаг 10.2

После всех этих изменений наша пользовательская форма должна выглядеть так.

VBA ProgressBar Шаг 10.3

Шаг 11: Теперь вставьте еще одну метку. На этот раз вставьте метку прямо внутрь рамки, которую мы вставили.

VBA ProgressBar Шаг 11

При вставке этикетки убедитесь, что левая сторона этикетки точно соответствует вставленной рамке, как показано на изображении выше.

Шаг 12: После вставки метки измените свойства метки следующим образом.

Свойство 1: Измените имя метки на «MainProgressLabel».

VBA ProgressBar Шаг 12

Свойство 2: Удалите подпись.

VBA ProgressBar Шаг 12.1

Свойство 3: Измените цвет фона по вашему желанию.

VBA ProgressBar Шаг 12.2

Хорошо, теперь мы закончили процесс настройки индикатора выполнения, и на данный момент он выглядит так.

VBA ProgressBar Шаг 12.3

Теперь нам нужно ввести коды, чтобы все работало идеально.

Шаг 13: Чтобы сделать структуру, добавьте ниже макрос в экселеМакрос в ExcelМакрос в Excel представляет собой серию инструкций в виде кода, который помогает автоматизировать ручные задачи, тем самым экономя время. Excel выполняет эти инструкции шаг за шагом для заданных данных. Например, его можно использовать для автоматизации повторяющихся задач, таких как суммирование, форматирование ячеек, копирование информации и т. д., тем самым быстро заменяя повторяющиеся операции несколькими щелчками мыши.
читать далее
.

Код:

Sub InitUFProgressBarBar()

With UFProgressBar
.Bar.Width = 0
.Text.Caption = "0%"
.Show vbModeless
End With
Прогрессбар VBA Шаг 13
Примечание: «UFProgressBar» — это имя, данное пользовательской форме, «Bar» — это имя, данное созданному нами фрейму, а «Text» — это имя, данное метке внутри фрейма.

Теперь, если вы запустите этот код вручную или через клавишу F5, мы должны увидеть индикатор выполнения, подобный этому.

Индикатор выполнения VBA Шаг 13.1

Шаг 14: Теперь нам нужно создать макрос для выполнения нашей задачи. Я выполняю задачу по вставке серийных номеров от 1 до 5000. Наряду с этим кодом нам также необходимо настроить гистограмму выполнения, файл . Код Thew — это индивидуальный код для вас.

Код:

Sub ProgressBar_Chart()

Dim i As Long
Dim CurrentUFProgressBar As Double
Dim UFProgressBarPercentage As Double
Dim BarWidth As Long

i = 1

Call InitUFProgressBarBar

Do While i <= 5500

Cells(i, 1).Value = i

CurrentUFProgressBar = i / 2500
BarWidth = UFProgressBar.Border.Width * CurrentUFProgressBar
UFProgressBarPercentage = Round(CurrentUFProgressBar * 100, 0)

UFProgressBar.Bar.Width = BarWidth
UFProgressBar.Text.Caption = UFProgressBarPercentage & "% Complete"

DoEvents

i = i + 1

Loop

Unload UFProgressBar

End Sub
Индикатор выполнения VBA, шаг 14

УЗНАТЬ БОЛЬШЕ >>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *