問題タブ [vbe]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vba - VBE のワークシート名
私のワークブックには、VBE の各コンポーネントに対して 2 つの異なる名前があることに気付きました。name1 と name2 の違いは何ですか? マクロが確実に機能するようにするには、どちらを参照すればよいですか?
c++ - VBA デバッガの精度
single
C++ に相当するものはfloat
Excel ワークブック モジュールの VBA にあると思います。とにかく、最初に割り当てた値 (876.34497) は、VBA にブレークポイントを設定すると、イミディエイト ウィンドウ、ウォッチ、ホバー ツールチップで 876.345 に丸められます。ただし、これSingle
を C++ DLL に渡すと、C++ はそれを元の値 876.34497 として報告します。
それで、それは実際に元の値としてメモリに保存されますか? これはデバッガの制限ですか? ここで何が起こっているのかわからない。私が渡しているものが C++ 側で得ているものかどうかをテストするのが難しくなります。
私は試した:
VBA はそれほど単純ではないため、あるレベルでは 876.34497 としてメモリに格納する必要があります。CDbl
そうでなければ、そのままでは正しくないと思います。
vba - VBEイミディエイトウィンドウはリテラル番号をどのように処理しますか?
イミディエイト ウィンドウを使用してデバッグを行ったところ、この質問のために簡略化した次のようなものに出会いました。
このコマンドの実行:
「オーバーフロー」エラーが発生します。これは、データ型を宣言しておらず、VBE が想定していたことが原因であると仮定しましょうInteger
。結果が符号付き整数の境界の外にあるため、オーバーフローが発生します。
ただし、実行すると:
私は40000
期待通りに取得します。
これは、私が最初Long
に an ではなくa から始めたからInteger
でしょうか (つまり、20,000 対 39,999)? したがって、計算結果ではなく、最初の入力データに基づいてメモリが割り当てられますか?
excel - VBA デバッガーは、コレクションの 256 要素のみを表示します
エクセルのマクロを作っています。デバッガーが配列のようにすべての要素を表示するオプションはありますか?
そうでない場合、唯一の回避策は、コレクションを膨張させた後に配列にクラスオブジェクトを格納することですか?
vba - データベースの VBProject を取得する
MS Access VBA でデータベース オブジェクトが与えられた場合、そのデータベースの VBProject を取得するにはどうすればよいですか?
Access で VBProjects を取得する方法を知っている唯一の方法は、Application.VBE.VBProjects.Item(???)
. ただし、プロジェクトの順序と名前はわかりません。私はそれが親データベースであることだけを知っています。Excelで同等のものは単純です