编译错误未找到方法或数据成员

时间:2015-07-15 22:33:49

标签: vba vb6

我收到编译错误,方法或数据成员未找到。此代码以前可编译,没有任何问题。 (没有必要编译它近一年)。它突出显示了.Value =

Private Sub Form_Load()
    cmdClose.Visible = False
    cmdRun.Visible = False
    lblRun.Visible = False
    dtBeginDate.Value = Format(Now, "short date")
    dtEndDate.Value = Format(Now, "short date")
End Sub

4 个答案:

答案 0 :(得分:0)

我做VB6已经有几年但是......

你可能已经启用了'option explicit',这改变了编译器的繁琐程度。

  • dtBeginDate.Value可能是'date'类型
  • 格式(现在,“短日期”)是'string'类型

试试这个:

dtBeginDate.Value = Now
dtEndDate.Value = Now

如果您想删除“现在”的时间部分,您可能需要执行以下操作:

Dim dateNow As Date
dateNow = DateValue(Now)
dtBeginDate.Value = dateNow 
dtEndDate.Value = dateNow 

答案 1 :(得分:0)

如何将代码更改为:

Private Sub Form_Load()
    cmdClose.Visible = False
    cmdRun.Visible = False
    lblRun.Visible = False
    dtBeginDate.Value = Date
    dtEndDate.Value = Date
End Sub

答案 2 :(得分:0)

"Method or data member not found"错误可能意味着dtBeginDatedtEndDate实际上没有.Value属性。

请尝试设置.Text属性。

Private Sub Form_Load()
    cmdClose.Visible = False
    cmdRun.Visible = False
    lblRun.Visible = False
    dtBeginDate.Text = Format(Now, "short date")
    dtEndDate.Text = Format(Now, "short date")
End Sub

答案 3 :(得分:0)

雅各

这是交易:你需要首先确定dtBeginDate和dtEndDate是什么类型的对象。直到你知道这一点,你才会在圈子里跑来跑去。

你能找到声明这些dtBeginDate和dtEndDate变量的代码行吗?例如,您显示dateNow被声明为Date数据类型。但我没看到dtBeginDate或dtEndDate是什么......

如果您对名为dtBeginDate和dtEndDate的表单有控件,则表示存在包含控制代码的DLL或OCX。它还意味着您的项目引用了DLL / OCX,它提供了您命名为“dtBeginDate”的对象。

如果用于工作的代码显然你没有编码问题。

为了最好地帮助您,让我们首先确定dtBeginDate是否已被声明为某种类型的变量 - 或者它是否是表单上的控件的名称。