我在使用 Excel VBA 宏时遇到了一些问题,希望你能给我一些关于如何修复它的建议。在下面的代码中,当用户单击命令按钮时,会弹出一个 InputBox,用户输入一个 XXX-XXXXXX 形式的数字(例如 111-222222)。然后,宏从与按钮相邻的列中获取值,并使用输入变量替换相邻列值的某个部分。但是,当我尝试运行宏并输入诸如 123-456789 之类的数字时,没有任何反应。我相信这与用户输入的破折号有关,但是我不确定如何修复它。请帮忙!
Sub CommandButtonTitleXXXdashXXXXXX_Click()
Application.ScreenUpdating = False
On Error Resume Next
Dim n As Integer
n = Worksheets("REVISIONS").Range("D3:D17").Cells.SpecialCells(xlCellTypeConstants).Count
If n = 15 Then
If MsgBox("Title revision box full. Add manually.", vbOKOnly, "Error") = vbOK Then
Exit Sub
End If
End If
Dim rs As Integer
rs = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row
Dim amount As String
Application.ScreenUpdating = True
amount = Application.InputBox("Enter case number:", "")
Application.ScreenUpdating = False
If amount = False Then
Exit Sub
Else
Dim newCell As String
newCell = Replace(Worksheets("TITLE").Range("A" & rs).Value, "XXX-XXXXXX", amount)
Worksheets("REVISIONS").Range("D17").End(xlUp).Offset(1, 0) = newCell
End If
End Sub