1

私はVBA(Excelで使用)が初めてで、現在、JavaまたはC#との違いを理解するためにいくつかのチュートリアルを行っています。しかし、それは問題ではありません... ;-)

この 1 つのチュートリアルでは、Form_Initialize プロシージャで "Print" を使用するように指示されています (私は Office XP と VBA6 を使用しています ... 理由は聞かないでください。私の決定ではありません :-P)。しかし、そうすると、上記のエラーが表示されます(または、少なくともエラーは英語でこのようなものを読む必要があると思います。私のバージョンはドイツ語です:D)。

非常に簡単な例で私がやろうとしていることは次のとおりです。

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

チュートリアルに従って、これは初期化しようとしているフォームの「表面」に「Hello World」を出力する必要があります...ヘルプ(F1)に従って、ほぼ同じことを行う必要があります...
しかし、そうではありません;- )

誰かが私が間違っている場所を知っていますか? 理解できません ...

よろしく
お願いします。

================================更新================= ===============
チュートリアルは私に書くように指示します

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

これにより、フォームに表形式の式が表示されます。
TextBox を使用してそれは可能ですか?

4

3 に答える 3

4

テキストを配置するユーザーフォームに何らかのコントロールを挿入する必要があります。たとえば、タイプのコントロールを配置してCaption名前を付けますCaption1(プロパティ リスト内F4)。

次に、次のように値を割り当てることができます。

Me.Caption1 = "Hello world!"

または、必要に応じて、 を使用Debug.Print "Hello world!"してデバッグ コンソールに文字列を単純に出力することも (開発中にのみ役立つ)、または を使用MsgBox "Hello world!"してユーザーにメッセージを表示することもできます。この場合、フォームはまったく必要ありませんが、Excel のボタンなどからマクロをトリガーするだけで済みます。

于 2013-03-28T09:18:18.140 に答える
1

VBA は Win32 アプリと同じではありません。print の使用は古いバージョンであり、現在は同じではありません。表面に何かを印刷したい場合は、それを書くために何かを追加する必要があります。お気に入り...

ツールボックスからフォームにテキストボックス(オブジェクト)を追加し、ラベル(オブジェクト)も追加します次に、テキストボックスのデフォルト名はTextbox1で、ラベルのデフォルト名はLabel1です

だから、あなたのコードで:

Private Sub UserForm_Initialize()
   textbox1.text = "Hello World"
Label1.text = "Hello World"
End Sub
于 2013-03-28T09:19:11.363 に答える