Этот код VBA сделает работу:
Public Function sequence(data As String)
result = ""
endvalues = Split(data, "-")
minval = endvalues(0)
maxval = endvalues(1)
lminval = Len(minval)
lmaxval = Len(maxval)
For i = 1 To lminval
singlechar = Mid(minval, i, 1)
If IsNumeric(singlechar) = True Then
minchar = Left(minval, i - 1)
minnum = Right(minval, lminval - (i - 1))
i = lminval
End If
Next i
For i = 1 To lmaxval
singlechar = Mid(maxval, i, 1)
If IsNumeric(singlechar) = True Then
maxchar = Left(maxval, i - 1)
maxnum = Right(maxval, lmaxval - (i - 1))
i = lminval
End If
Next i
For i = minnum To maxnum
result = result & minchar & i & ","
Next i
result = Left(result, Len(result) - 1)
sequence = result
End Function
Откройте Macros /VBA, в ThisWorkbook вставьте модуль и вставьте его в правой части окна.
Если в ячейке A1
вас есть, например, R1-R5, то в ячейке B1
вы можете поставить =sequence(A1)
чтобы получить результат R1, R2, R3, R4, R5