Sub abProgressBar() Dim frm As ufrmProgressBar: Set frm = New ufrmProgressBar frm.Show End Sub
Sub abProgressBar2(frm As ufrmProgressBar) Dim fullWidth As Long: fullWidth = frm.TextBox1.Width Dim maxCount As Long: maxCount = 3000 Dim d As Long frm.Label1.BackColor = 125 frm.Label1.Caption = "" For i = 1 To maxCount '### 아래 for문은 시간 때우기입니다. 이게 없으면 너무 빨라서 진행상태가 안보여요.
'### 신강현님이 rnd함수를 이용해서 구현하고 싶었던 내용일겁니다. For d = 1 To 100000: Next DoEvents frm.Label1.Width = (fullWidth / maxCount) * i frm.Label2.Caption = "작업 진행율 : " & Format(i / maxCount, "0.0%") Next End Sub
신강현님..
첨부 파일을 보고 나니.. 질문을 이해한 것 같습니다.
작업 진행바(Progress Bar)를 만들고 싶으신 거죠?
제목이 "프로그램바"로 되어 있어서 무엇인가 했어요.. ㅎㅎ
첨부파일을 참고하세요.
다운받기 : abyul.com_progressBar_20130130.xlsm
Sub abProgressBar()
Dim frm As ufrmProgressBar: Set frm = New ufrmProgressBar
frm.Show
End Sub
Sub abProgressBar2(frm As ufrmProgressBar)
Dim fullWidth As Long: fullWidth = frm.TextBox1.Width
Dim maxCount As Long: maxCount = 3000
Dim d As Long
frm.Label1.BackColor = 125
frm.Label1.Caption = ""
For i = 1 To maxCount
'### 아래 for문은 시간 때우기입니다. 이게 없으면 너무 빨라서 진행상태가 안보여요.
'### 신강현님이 rnd함수를 이용해서 구현하고 싶었던 내용일겁니다.
For d = 1 To 100000: Next
DoEvents
frm.Label1.Width = (fullWidth / maxCount) * i
frm.Label2.Caption = "작업 진행율 : " & Format(i / maxCount, "0.0%")
Next
End Sub
참고로..
MS에서 제공하는 Progressbar 컨트롤을 사용하려면 아래 링크를 참고하세요..
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040103&docId=73258335&qb=dmJhIHByb2dyZXNzYmFy&enc=utf8§ion=kin&rank=1&search_sort=0&spq=0&pid=RdAqs35Y7ulssv6csclsssssssG-160762&sid=UQiqA3JvLCgAADKH8uE
추가컨트롤에서
Microsoft ProgressBar Control, Version 6.0이 필요합니다.
관련 라이브러리 파일은 VSFLEX3.OCX