Excel VBA运行时错误?
当我试图执行下面的代码时,我得到了错误消息“运行时错误”424“对象需要”,
Sub test() Range("Q" & i).Text = x1.Text End Sub
其中x1是日历对象。
如果我将使用下面的代码
Range("Q" & i) = x1.Text
我的代码将存储date为02-11-2013而不是11-02-2013,这里的问题是重新安排它的月份和date。
希望我会有这个解决scheme。
提前致谢
由于范围的.Text
属性是只读的,因此会在第一个实例中收到错误,用于从单元格/范围中获取当前格式化的值。
我会使用格式化function,但也设置您要放入的单元格的数字格式是安全的:
Range("Q" & i).Value = Format(x1.Text, "dd-mm-yyyy") Range("Q" & i).NumberFormat = "dd-mm-yyyy;@"
编辑:除了你的评论,我会build议尝试格式化date和交换的date,然后应用NumberFormat像这样:
Range("Q" & i).Value = Format(x1.Text, "mm-dd-yyyy") Range("Q" & i).NumberFormat = "dd-mm-yyyy;@"
您可以使用格式function:
Range("Q" & i).Value = Format(x1.Text, "dd-mm-yyyy")
请使用Range("Q" & i) = Format(x1.Text,"dd-MM-yyyy")