将Userform信息保存到工作表时出现错误1004应用程序或对象错误

时间:2017-03-04 03:30:58

标签: excel vba excel-vba userform

我为发票工单做了Userform。它可以将客户添加到数据库中,启动新的工作订单,或从数据库中选择现有客户以启动新的工作订单。

我为保存工单而编写的代码在工作表中选择Range的位有问题。

我使用了相同的代码来保存客户信息(我复制并粘贴了EXACT代码以查看它是否可以代替我专门为保存工单而编写的代码),并且它失败了{ {1}}。

输入和计算后,我无法保存工单信息。

我尝试了4种或5种不同的方法,但我目前唯一的代码是用于保存客户信息的代码。

1004 Application or Object Error

1 个答案:

答案 0 :(得分:0)

你的行

Range("A1").End(xlDown).Offset(1, 0).Select

是你手动选择单元格A1的VBA,按结束 DownArrow ,然后选择下面一行的单元格。

如果正如你在评论中所说,你在A栏中没有任何东西(除了可能是单元格A1本身的东西),会发生什么

  • 您选择单元格A1
  • 您按结束 DownArrow
  • Excel将选择移动到单元格A1048576(或单元格A65536,具体取决于版本)
  • 你看,没有第1048577行
  • 你惊恐地举起手来说“我不能这样做 - 请不要强迫我尝试!!” (这是Excel想要说的,但它礼貌地返回“运行时错误'1004':应用程序定义的错误或对象定义的错误”。)

解决方案是从工作表的底部开始,通过向上移动找到最后一个非空单元格:

Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Select