Лента за напредък на Excel VBA в Excel
Лентата на напредъка е нещо, което ни показва колко от процеса е свършен или завършен, когато изпълняваме големи набори от кодове, които изискват по-голямо време за изпълнение, използваме лентата за напредък във VBA, за да покажем на потребителя за състоянието на процеса или има множество процеси, работещи в един код, ние използваме лентата за напредък, за да покажем кой процес е напреднал до каква степен.
Лентата за напредъка показва процента на изпълнените задачи, когато действителната задача се изпълнява зад екрана с набор от инструкции, дадени от кода.
Когато изпълнението на кода на VBA отнема значително време, притеснението на потребителя е да знае колко скоро може да завърши. По подразбиране трябва да изчакаме цялото време, за да изпълним задачата, но като вмъкнем лентата за напредъка, ние опознаваме напредъка на кода на VBA.
В почти целия компютърен софтуер виждаме хоризонтална диаграма, която показва напредъка на задачата, която изпълняваме, точно както изображението по-долу.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code.jpg.webp)
В excel to можем да създадем лента за напредък, като използваме VBA кодиране. Ако някога сте се чудили как можем да създадем лента за напредъка, това е статията, създадена специално за вас.
Създайте своя собствена лента за напредъка
За да създадем лента за напредъка, трябва да следваме няколко стъпки. По-долу са описани стъпките, които трябва да бъдат включени при създаването на лентовата диаграма на напредъка.
Стъпка 1: Създайте или вмъкнете нов потребителски формуляр.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_2.png.webp)
Веднага след като щракнете върху опцията по-горе, ще видите потребителска форма като долната.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_3.png.webp)
Стъпка 2: Натиснете клавиша F4, за да видите прозореца на свойствата на VBA.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_4.png.webp)
В този раздел за свойства трябва да променим свойствата на VBA Userform, който сме вмъкнали.
Стъпка 3: Променете името на потребителския формуляр на UFProgressBar.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_5.png.webp)
Сега можем да препращаме тази потребителска форма с името „UFProgressBar“, докато кодираме.
Стъпка 4: Променете свойството Show Model Property на потребителския формуляр на FALSE.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_6.png.webp)
Стъпка 5: Сега коригирайте подравняването на потребителя според вашите нужди. Промених височината на потребителския формуляр на 120 и ширината на 300.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_7.png.webp)
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_8.png.webp)
Стъпка 6: Променете надписа на потребителския формуляр на „Прогрес лента на състоянието“.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_9.png.webp)
Стъпка 7: Сега, от кутията с инструменти на потребителския формуляр, поставете LABEL в потребителската форма в горната част.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_10.png.webp)
С този етикет трябва да зададем свойствата на етикета. Изтрийте надписа и го направете празен и коригирайте ширината на етикета.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_11.png.webp)
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_12.png.webp)
Стъпка 8: Променете името на етикета на „ProgessLabel“.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_13.png.webp)
Стъпка 9: Сега, от кутията с инструменти, вземете рамката и нарисувайте точно под етикета, който сме поставили в предишните стъпки. Уверете се, че рамката е в центъра на потребителската форма.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_14.png.webp)
Стъпка 10: Сега трябва да променим някои от свойствата на Frame, за да изглежда то точно същото като потребителската форма, която сме вмъкнали.
Свойство 1: Променете името на кадъра на „ProgressFrame“.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_15.png.webp)
Свойство 2: Изтрийте надписа и го направете празен.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_16.png.webp)
Свойство 3: Променете специалния ефект на рамката на 6 - fmSpecialEffectBump.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_17.png.webp)
След всички тези промени потребителският ни формуляр трябва да изглежда така.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_18.png.webp)
Стъпка 11: Сега поставете още един етикет. Този път поставете етикета точно в рамката, която сме поставили.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_19.png.webp)
Докато поставяте етикета, уверете се, че лявата страна на етикета точно отговаря на рамката, която сме поставили, както е показано на горното изображение.
Стъпка 12: След поставяне на етикета променете свойствата на етикета, както следва.
Свойство 1: Променете името на етикета на „MainProgressLabel.“
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_20.png.webp)
Свойство 2: Изтрийте надписа.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_21.png.webp)
Свойство 3: Променете цвета на фона според вашето желание.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_22.png.webp)
Добре, сега приключихме с процеса на настройка на лентата за напредък и в този момент от време тя изглежда така.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_23.png.webp)
Сега трябва да въведем кодове, за да работи това перфектно.
Стъпка 13: За да направите рамката, добавете долния макрос в Excel.
Код:
Sub InitUFProgressBarBar () С UFProgressBar .Bar.Width = 0 .Text.Caption = "0%". Показване на vbModeless Край с
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_24.png.webp)
Сега, ако стартирате този код ръчно или чрез клавиша F5, трябва да видим лентата за напредък като тази.
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code.gif)
Стъпка 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 / 2500FPPWardar = i / 2500FPP Border.Width * CurrentUFProgressBar UFProgressBarPercentage = Round (CurrentUFProgressBar * 100, 0) UFProgressBar.Bar.Width = BarWidth UFProgressBar.Text.Caption = UFProgressBarPercentage & "% Complete" DoEPop IverBarFePopPressPressParcenterBarPercentage & "% Complete" DoEPop IverBarPerPressPressPress
![](https://cdn.know-base.net/7050711/vba_progress_bar_create_progress_bar_chart_using_vba_code_2.gif)