-ChatGPT-
-ChatGPT-4の回答
Sub SelectWorksheetByPartialName() Dim SourceWorkbook As Workbook Dim FileDialog As FileDialog Dim FilePath As String Dim SheetNamePartial As String Dim FoundSheet As Worksheet ' ダイアログボックスを開いてファイルを選択 Set FileDialog = Application.FileDialog(msoFileDialogFilePicker) FileDialog.AllowMultiSelect = False FileDialog.Title = "ファイルを選択してください" If FileDialog.Show = -1 Then FilePath = FileDialog.SelectedItems(1) Else Exit Sub End If ' 選択されたファイルを開く Set SourceWorkbook = Workbooks.Open(FilePath) ' シート名の一部をインプットボックスで入力する SheetNamePartial = InputBox("シート名の一部を入力してください:") ' 部分一致するシートを探す For Each ws In SourceWorkbook.Worksheets If InStr(1, ws.Name, SheetNamePartial) > 0 Then Set FoundSheet = ws Exit For End If Next ws ' 部分一致するシートが見つかった場合、選択する If Not FoundSheet Is Nothing Then FoundSheet.Select MsgBox "シートが選択されました: " & FoundSheet.Name Else MsgBox "一致するシートが見つかりませんでした。" End If End Sub