我正在尝试构建一个函数来返回 xlFillSeries 的结束字符串/单元格值。有没有办法在不实际写入工作表然后选择最后一个单元格的情况下做到这一点?我想避免操纵工作表/工作簿。
这是生成系列的代码:
Dim SeqStart As String, SeqInt As Integer
SeqStart = "XYZ100"
SeqInt = 42 ' Function should return XYZ141
With Range("A1")
.Value = UCase(SeqStart)
If SeqInt > 1 Then
.AutoFill Destination:=Range("A1").Resize(SeqInt), Type:=xlFillSeries ' Will cause error if only 1 sample sequence
End If
End With
我想利用 XlFillSeries 因为它可以很好地处理奇数数据,例如:如果我的 SeqStart =A1B100那么我不能使用正则表达式将其分解为数字,执行数学运算,然后将其重新组合在一起,因为B中间有字符串。我确实知道该系列将/应该始终以数字结尾,但是我在不知道字符串长度和/或字母数字怪异的混合的情况下,努力从字符串的右手中剥离数字部分。
所以我想我的问题可以通过弄清楚如何从字符串的右侧去除数字然后做数学并将字符串重新组合在一起来回答。数字是递增的。
或者,我只是利用XlFillSeries但没有实际写入工作簿。目前我只是将其设置为写入“临时表”,然后捕获最后一个单元格并删除临时表,但我想知道是否有更好的方法。