55 lines
1.5 KiB
QBasic
55 lines
1.5 KiB
QBasic
Attribute VB_Name = "Module3"
|
|
Option Explicit
|
|
|
|
Sub シートをまとめて再表示()
|
|
Application.ScreenUpdating = False '画面更新停止
|
|
Application.Calculation = xlManual '自動計算停止
|
|
Debug.Print "---START---"
|
|
|
|
Dim ws As Worksheet
|
|
For Each ws In Worksheets
|
|
ws.Visible = True
|
|
Next
|
|
|
|
Debug.Print "--- END ---"
|
|
Application.Calculation = xlAutomatic '自動計算開始
|
|
Application.ScreenUpdating = True '画面更新開始
|
|
|
|
End Sub
|
|
|
|
Sub 指定シートを削除()
|
|
Debug.Print "------ 指定シートを削除 開始 ------"
|
|
Application.ScreenUpdating = False '画面更新停止
|
|
Application.Calculation = xlManual '自動計算停止
|
|
|
|
Dim ws As Worksheet
|
|
Dim wsToDelete As Collection
|
|
Dim nameEndings As Variant
|
|
Dim ending As Variant
|
|
Dim i As Long
|
|
|
|
Set wsToDelete = New Collection
|
|
nameEndings = Array("_受着完", "_損益", "_DATA")
|
|
|
|
' 対象シートを収集
|
|
For Each ws In Worksheets
|
|
For Each ending In nameEndings
|
|
If Right(ws.Name, Len(ending)) = ending Then
|
|
wsToDelete.Add ws
|
|
Exit For
|
|
End If
|
|
Next ending
|
|
Next ws
|
|
|
|
' シート削除(逆順で)
|
|
Application.DisplayAlerts = False
|
|
For i = wsToDelete.Count To 1 Step -1
|
|
wsToDelete(i).Delete
|
|
Next i
|
|
Application.DisplayAlerts = True
|
|
|
|
Application.Calculation = xlAutomatic '自動計算開始
|
|
Application.ScreenUpdating = True '画面更新開始
|
|
|
|
Debug.Print "------ 指定シートを削除 終了 ------"
|
|
End Sub |