在不同的工作表excel中添加新的有罪数字集

在单击新按钮时需要帮助创建一个excel宏,它将在第二行第二行的sheet2中查找并查找输入的最后一个数字,然后添加1并在单元格D3中返回该新数字

所以在sheet2列中,c行2将是CI300,它会在下面添加CI301并在sheet1列d行3中返回该数字

我一直试图找到过去2天的例子,类似的东西发现了一些,但只有一个接近,但它有错误,并不一样

谢谢

回答(1)

2 years ago

这应该工作......

Sub Btn_NextNum_Click()
Dim KeyStart As Range, LastNum, NewNum

    Set KeyStart = Sheets("Sheet2").[C2]   ' bad bad hard coding, but you asked for it
    If KeyStart(2, 1) = "" Then
        LastNum = KeyStart
    Else
        LastNum = KeyStart(KeyStart.End(xlDown).Row - 1, 1)
    End If

    NewNum = "CI" & Val(Mid(LastNum, 3)) + 1

    If KeyStart(2, 1) = "" Then
        KeyStart(2, 1) = NewNum
    Else
        KeyStart(KeyStart.End(xlDown).Row, 1) = NewNum
    End If

    Sheets("Sheet1").[D3] = NewNum         ' bad bad hard coding, but you asked for it

End Sub

注意我讨厌单元格地址的硬编码...恕我直言,最好使用范围名称作为键列和输出单元格的开头,或者将输出定向到 Selection ,这样按钮就可以放置你的NextNum光标 .