excel:连接userform

时间:2017-06-07 14:06:55

标签: excel vba excel-vba

我有一个名为CompData的UserForm,它看起来像这样:

enter image description here

此表单的主要目标是使用此字符串=">" & DATE(year, month, day)(或变体)更新CONSULTA表单中的单元格,其中DATE的值和正确的数学符号来自表单。

在" Inserir" (它是我的插入按钮)我关联了这段代码:

Private Sub Inserir_Click()

If Maior.Value = True Then

    Worksheets("CONSULTA").Range("K23") = "=" > " & DATE(CompData.Ano.Value, CompData.Mes.Value, CompData.Dia.Value)"

ElseIf Maior.Value = True Then

    Worksheets("CONSULTA").Range("K23") = "=" < " & DATE(CompData.Ano.Value, CompData.Mes.Value, CompData.Dia.Value)"

ElseIf MaiorIgual.Value = True Then

    Worksheets("CONSULTA").Range("K23") = "=" >= " & DATE(CompData.Ano.Value, CompData.Mes.Value, CompData.Dia.Value)"

ElseIf MenorIgual.Value = True Then

    Worksheets("CONSULTA").Range("K23") = "=" <= " & DATE(CompData.Ano.Value, CompData.Mes.Value, CompData.Dia.Value)"

End If
End Sub

Maior,Menor,MaiorIgual和MenorIgual是我的选项按钮的名称。

无论如何,当我运行代码时,它给了我:

  

运行时错误461:   找不到方法或数据成员

并强调这一部分:

Private Sub Inserir_Click()

我知道存在CONCATENATE功能,但我认为它不适用于我的VBA代码。

我不知道我是否正确连接它,但我真的不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:2)

如果您想将K23的公式设置为=">"&DATE(2017,6,8),那么您需要编码:

Worksheets("CONSULTA").Range("K23").Formula = "="">""&DATE(" & CompData.Ano.Value & "," & CompData.Mes.Value & "," & CompData.Dia.Value & ")"

请注意要在字符串中包含""的双"