0

新しいボタンをクリックすると、Excel マクロの作成に助けが必要です。それは、シート 2 の列 c 行 2 を調べ、入力された最後の数値を見つけてから、1 を追加し、セル D3 にその新しい数値を返します。

したがって、シート 2 の列 c 行 2 は CI300 になり、その下に CI301 が追加され、シート 1 列 d 行 3 にその数値が返されます。

過去 2 日間、似たような例を見つけようとしましたが、いくつか見つかりましたが、近いものは 1 つだけでしたが、エラーがあり、同じではありませんでした

ありがとう

4

1 に答える 1

0

これはうまくいくはずです...

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を配置できるように出力を送信する方がよいでしょう。

于 2013-02-01T20:00:43.900 に答える