EXCEL VBA 複数シートを選択する
ワークシートを複数したい場合に、配列でセレクトってRedimし直しで煩雑なコードになりませんか?
今回は、コレクションを利用してシンプルなコードで指定できるようにしました!
サンプル
「Sheet1とSheet3とSheet5を選択する。」
Sub test() Dim cllTemp As New Collection cllTemp.Add "Sheet5" cllTemp.Add "Sheet3" cllTemp.Add "Sheet1" ni複数シート選択 ActiveWorkbook, cllTemp End Sub ' 機能 : 複数シートを選択する。 ' ' 返り値 : - ' ' 引き数 : ByRef wkbTarget As Workbook 対象のワークブック ' ByRef pcll印刷シート名 As Collection 選択するワークシート名 ' 機能説明 : 存在しないシート名を指定した場合、エラーになります。 ' ' 備考 : - ' ' この関数のURL :https://pgbigoroku.hatenablog.com/entry/2022/08/22/162205 ' ' バージョン :2022/8/21 ' Public Sub ni複数シート選択(ByRef wkbTarget As Workbook, ByRef pcll印刷シート名 As Collection) Dim arySheetName() As String Dim intFor As Integer ReDim arySheetName(0 To pcll印刷シート名.Count - 1) For intFor = 0 To pcll印刷シート名.Count - 1 arySheetName(intFor) = pcll印刷シート名(intFor + 1) Next wkbTarget.Sheets(arySheetName).Select End Sub