我试图通过在Excel中使用.inputboxes来自动化重复性任务。
注意:CopyAmt
是从另一个InputBox
返回的整数,userInputRange
是类型8的框,RowCnt
是userInputRange
的Row.Count
。
For i = 1 To CopyAmt
userInputRange.Copy
ActiveCell.Offset(RowCnt, 0).Activate
ActiveCell.PasteSpecial
ActiveSheet.Range(ActiveCell.Offset(, 24), ActiveCell.Offset(RowCnt - 1, 24)).Value = Application.InputBox(Prompt:="Internal Value", Type:=2)
Next i
如果用户要单击Cancel,我希望只有在删除刚刚粘贴到上面代码第4行的选择后才退出sub。这就是我所尝试的。
For i = 1 To CopyAmt
userInputRange.Copy
ActiveCell.Offset(RowCnt, 0).Activate
ActiveCell.PasteSpecial
ActiveSheet.Range(ActiveCell.Offset(, 24), ActiveCell.Offset(RowCnt - 1, 24)).Value = Application.InputBox(Prompt:="Internal Value", Type:=2)
If ActiveSheet.Range(ActiveCell.Offset(, 24), ActiveCell.Offset(RowCnt - 1, 24)).Value = False Then
Selection.Delete
Exit Sub
End If
Next i
这导致了一个错误的输入,我希望一些澄清的事情,我做错了,或只是没有效率。
谢谢你抽出时间。
1条答案
按热度按时间qxgroojn1#
肖恩
给予这个。注意:这是未经测试的代码,但应该工作。
编辑:从Application.InputBox行中删除了Type=2。您可以在后面的代码中测试所需的数据类型。