Nebo i takhle:
Kód:
Option Explicit
    Dim sloupec1 As String, sloupec2 As String, radek1 As Integer, radek2 As Integer

Sub makro()
    If radek1 = 0 Then
        radek1 = 10
        radek2 = 200
        sloupec1 = "A"
        sloupec2 = "C"
    End If
    Worksheets("List1").Activate
znovu:
    Dim Dotaz, Dotaz2
    On Error GoTo chyba
    radek1 = InputBox("Počáteční řádek?", "Počáteční řádek", radek1)
    radek2 = InputBox("Konečný řádek?", "Konečný řádek", radek2)
    sloupec1 = UCase(InputBox("Počáteční sloupec?", "Počáteční sloupec", sloupec1))
    sloupec2 = UCase(InputBox("Konečný sloupec?", "Konečný sloupec", sloupec2))
    Dotaz2 = MsgBox("Zvolený rozsah je " & sloupec1 & "-" & radek1 & ":" & sloupec2 & "-" & radek2, vbYesNo)
    If Dotaz2 = 7 Then GoTo znovu
    Range(sloupec1 & radek1 & ":" & sloupec2 & radek2).Select
    Exit Sub
chyba:
    Dotaz = MsgBox("Zadali jste chybně údaj. Zadáte znovu?", vbYesNo)
    If Dotaz = 6 Then Resume Else Exit Sub
End Sub
Chtělo by to ještě ošetřit situaci, kdy někdo do sloupce zadá číslici místo písmena, což celé makro zbytečně komplikuje. Z tohoto důvodu je také vhodnější používat styl odkazu R1C1. Pak by to mohlo být takto:

Kód:
Option Explicit
    Dim radek1 As Integer, radek2 As Integer, sloupec1 As Integer, sloupec2 As Integer
    
Sub makro()
     If radek1 = 0 Then
        radek1 = 10
        radek2 = 200
        sloupec1 = 1
        sloupec2 = 3
    End If
    Worksheets("List1").Activate
znovu:
    Dim Dotaz, Dotaz2
    On Error GoTo chyba
    radek1 = InputBox("Počáteční řádek?", "Počáteční řádek", radek1)
    radek2 = InputBox("Konečný řádek?", "Konečný řádek", radek2)
    sloupec1 = InputBox("Počáteční sloupec?", "Počáteční sloupec", sloupec1)
    sloupec2 = InputBox("Konečný sloupec?", "Konečný sloupec", sloupec2)
    Dotaz2 = MsgBox("Zvolený rozsah je R" & sloupec1 & "C" & radek1 & ":R" & sloupec2 & "C" & radek2, vbYesNo)
    If Dotaz2 = 7 Then GoTo znovu
    Range(Cells(radek1, sloupec1), Cells(radek2, sloupec2)).Select
    Exit Sub
chyba:
    Dotaz = MsgBox("Zadali jste chybně údaj. Zadáte znovu?", vbYesNo)
    If Dotaz = 6 Then Resume Else Exit Sub
End Sub