-ChatGPT-4に「このブックのシートを選択するのにインプットボックスで入力した名前が部分一致した場合、そのシートを設定してください。」と頼んだら

-ChatGPT-

-ChatGPT-4の回答

Sub SelectWorksheetByPartialNameInCurrentWorkbook()
    Dim TargetWorkbook As Workbook
    Dim SheetNamePartial As String
    Dim FoundSheet As Worksheet
    Dim ws As Worksheet
    Dim MsgBoxResult As Integer

    ' 現在のブックを設定する
    Set TargetWorkbook = ThisWorkbook

    ' シート名の一部をインプットボックスで入力する
    SheetNamePartial = InputBox("シート名の一部を入力してください:")

    ' 部分一致するシートを探す
    For Each ws In TargetWorkbook.Worksheets
        If InStr(1, ws.Name, SheetNamePartial) > 0 Then
            Set FoundSheet = ws
            Exit For
        End If
    Next ws

    ' 部分一致するシートが見つかった場合
    If Not FoundSheet Is Nothing Then
        ' シートが選択されたことを確認するメッセージボックスを表示 (Yes/No)
        MsgBoxResult = MsgBox("シートが選択されました: " & FoundSheet.Name & vbCrLf & "続行しますか?", vbYesNo)

        ' Yes が選択された場合、シートを選択する
        If MsgBoxResult = vbYes Then
            FoundSheet.Select
        ' No が選択された場合、処理を終了する
        Else
            Exit Sub
        End If
    Else
        MsgBox "一致するシートが見つかりませんでした。"
    End If
End Sub
タイトルとURLをコピーしました