| 
    
     |  | ▼Jaka さん: >>現在プログレスバーが作動中はその作業のみですが
 >>単純に、この作動中にもバックでは他のマクロが動くように
 >>できる?かの質問なんですが・・・
 >
 >>その場合下記のコードにCall・・・等を組み込むことで
 >>>そうではなく別の意味ですか(ひとつ心当たりがありますが)?
 >>たぶん心当たりではないかと思うのですが?
 >心当たりの見当が全くついてませんが、
 >プログレスバーってこんな感じですよ!
 jakaさん下動かしてみました。
 感じはわかりますが
 出来るかどうかは解りませんがこのバーが
 作動中に他のvbaを動かし、プログレスバー終了と同時に
 他のvbaコードも終了する。とういう動作を想定してます。
 いかがでしょうか?
 例えば下記コードをプログレスバー表示中に実行する。
 ということなのですが
 Sub 月曜日()
 Dim 日付 As Date
 
 ActiveSheet.Unprotect
 Range("J6,D10:G30,J10:Q30,I11:I12,I14:I30,D32:D38").Select
 Selection.ClearContents
 日付 = Now()
 Do Until Weekday(日付) = 2
 日付 = 日付 + 1
 Loop
 With Range("J6")
 .value = Format(日付, "yyyy/mm/dd")
 .Select
 End With
 
 Dim II As Integer, RR As Long, CC As Long
 For II = 1 To 14
 Select Case II
 Case 1 To 7: RR = 7 + II * 3: CC = 6
 Case Else:  RR = 24 + II:  CC = 4
 End Select
 Worksheets("スケ調").Cells(RR, CC) _
 .value = "=Calendar!H" & (4 + II)
 If II < 8 Then
 Worksheets("スケ調").Cells(RR, 10) _
 .value = "=Calendar!I" & (4 + II)
 End If
 Next
 
 >
 >Sub prog()
 > Application.DisplayStatusBar = True
 > cnt = 20999
 > Joz = 1000
 > moji = String(Int(cnt \ Joz), "□")
 > Application.StatusBar = moji
 > For i = 1 To cnt
 >   Cells(1, 1).Value = i
 >   If i Mod Joz = 0 Then
 >    moji = Application.Substitute(moji, "□", "■", 1)
 >    Application.StatusBar = moji
 >   End If
 > Next
 > MsgBox "終了"
 > Application.StatusBar = Empty
 >End Sub
 
 |  |