使用"print"时"object doesn't support this property or method"



我对VBA有点陌生(使用它与Excel),我目前正在通过一些教程来了解它与Java和c#的不同之处。但这不是问题所在……: -)

这个教程告诉我在form_initialize过程中使用"Print"(我使用的是Office XP和VBA6…)别问我为什么,这不是我的决定。但是当我这样做时,它会给我上面提到的错误(或者至少我猜这个错误在英语中应该是这样的,我的版本是德语:D)。

下面是一个非常简单的例子:

Private Sub UserForm_Initialize()
   Print "Hello World!"
End Sub

遵循本教程,这应该打印"Hello World"到即将初始化的表单的"表面"…按照帮助(F1),它应该做同样的事情…
但它没有;-)

谁知道我哪里错了?我不明白…

提前感谢和问候
gilaras

================================ 更新 ================================
教程告诉我写

Print " a", "      b", "a*b", "a+b", "Int(a/b)"

这应该会给我一个表格式的表达式。
使用文本框有可能吗?

您需要在放置文本的用户表单中插入某种控件。例如,放置类型为Caption的控件并将其命名为Caption1(在属性列表F4中)。

那么你可以用:

赋值
Me.Caption1 = "Hello world!"

或者,根据您的需要,您可以使用Debug.Print "Hello world!"在调试控制台中简单地输出字符串(仅在开发期间有用)—或者使用MsgBox "Hello world!"向用户显示消息。在这种情况下,你根本不需要表单,只需要触发宏,例如Excel中的from按钮。

VBA与Win32应用程序不相同。用印版是旧版,现在不一样了。如果你想要打印一些东西到表面上,你必须添加一个东西来写它。像…

从工具箱中添加一个文本框(对象)到窗体,也添加一个标签(对象)那么你的文本框的默认名称是Textbox1标签的默认名称是Label1

所以,在你的代码中:
Private Sub UserForm_Initialize()
   textbox1.text = "Hello World"
Label1.text = "Hello World"
End Sub

您可以使用debug.print在直接窗口/控制台(ctrl +g)中打印http://www.cpearson.com/excel/DebuggingVBA.aspx

相关内容

最新更新