OptionExplicit 'https://www.excel-easy.com/vba/examples/progress-indicator.html Private min_Value As Long, current_Value As Long, max_Value As Long PrivateSub UserForm_Initialize() ' UserForm Init code from ' http://www.program1472.com/bbs/board.php?bo_table=TB_03&wr_id=111&page=2 min_Value = 0: current_Value = 0: max_Value = 100 Me.Height = 70'// 폼의 넓이와 높이를 지정 Me.Width = 300 Label1.Caption = "" Label2.Caption = "" '// 배경이 될 라벨의 사이즈와 위치 설정 With Label1: .Left = 15: .Top = 5: .Width = InsideWidth - 30: .Height = InsideHeight - 20: EndWith '// 진행이 표시될 라벨의 사이즈와 위치 설정 With Label2: .Left = 15: .Top = 5: .Width = 0: .Height = InsideHeight - 20: EndWith '// 진행값이 표시될 라벨의 사이즈와 위치, 백스타일 투명하게 설정 With Label3: .Left = 15: .Top = InsideHeight / 3.6: .Width = InsideWidth - 30: .Height = InsideHeight / 3: .BackStyle = 0: EndWith Label2.Width = 0'// 초기 진행상태 0 Label3 = "0 / " & max_Value '// 표시할 테스트 초기값 EndSub ' Simple drawing current status Sub progressUpdate(current_Value As Single) 'Update Current value Label2.Width = (Me.InsideWidth - (Label2.Left * 2)) * (current_Value / max_Value) Label3 = current_Value & " / " & max_Value Repaint EndSub '' // for example, copy & paste in Module, NOT here 'Sub progressBar004example() ' 'For example ' ' Dim i As Integer, j As Integer, lastRow As Integer ' ' lastRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row ' j = lastRow ' ' Range(Cells(1, 3), Range("C" & j)).Clear ' ' For i = 1 To j ' Range("C" & i) = Range("A" & i) + Range("B" & i) ' ' 'Show hide window and set as zero, 0 percent ' If Not progressBar004.Visible Then progressBar004.Show 0 ' ' ' 'ProgressBar Status Update ' 'total work j, current work i >> calculate % percentage value and show it ' 'Update progressBar.Value ' If j > 100 Then ' 'Option1) For long line ' If (i Mod 10) = 0 Then progressBar004.Caption = i & " of " & j & " on progress." '' progressBar004.progressUpdate (i / j * 100) ' Else ' 'Option2) Not used commonly, in short line ' progressBar004.Caption = i & " of " & j & " on progress." ' progressBar004.progressUpdate (i / j * 100) ' End If ' ' ' '실제 사용시 아래 SLEEP 문구는 삭제하세요 ' 'In actual work, Delete below ' Sleep 300 ' Next ' ' 'Unloading progressBar ' Unload progressBar004 ' 'End Sub