• ベストアンサー

エクセルVBA 「Application」が二個並

エクセルVBA 「Application」が二個並んでてきます。 VBAを勉強していて Ctrl+Jでヒントを出しながらコードを打っているのですが 「Application」が二個並んでてきます。 これはどちらを選んでもいいのでしょうか? またなぜふたつ同じ単語が出てくるのですか?

  • yhyji
  • お礼率100% (399/399)

質問者が選んだベストアンサー

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

Ctrl+J..「プロパティ/メソッドの一覧」ですね。 コーディング時の状況に応じて、参照できるプロパティが全て出てきます。 ThisWorkbookモジュールにコードを書く時、 最初の書き出しから「プロパティ/メソッドの一覧」を使うと、 Meキーワード(すなわちThisWorkbook)が省略されたと解釈されて WorkbookオブジェクトのApplicationプロパティが出てきます。 もう一つは Excel.Global のApplicationプロパティが出てきます。 (こちらが標準モジュールでも出てくるApplicationプロパティ) WorkbookオブジェクトのApplicationプロパティも Excel.Global.Applicationプロパティも Excelアプリーション(Applicationオブジェクト)が呼び出される事になります。 >これはどちらを選んでもいいのでしょうか? どちらを選んでも、WorkbookオブジェクトのApplicationプロパティになります。 「プロパティ/メソッドの一覧」これはあくまで入力支援機能なので、 コードに書いた後に、それがどちらのプロパティか判断してくれるわけではありません。 ThisWorkbookモジュールで何も指定せずに『Application』と書くと Me.Applicationと書いたと見なされます。 でも、繰り返しになりますが、 Me.Applicationと書いても Excel.Applicationと書いても 最後は同じExcel.Applicationが呼ばれます。 VBEから[F2]キーで「オブジェクトブラウザ」を表示させ『Application』を検索してみてください。 Applicationプロパティは、いろいろなオブジェクトのメンバになっています。 各オブジェクトから、そのオブジェクトの上位アプリケーションにアクセスできます。 ヘルプの「Applicationプロパティ」も参照してください。

yhyji
質問者

お礼

WorkbookオブジェクトのApplicationプロパティ Excel.Global のApplicationプロパティ だったのですね。 オブジェクトブラウザで確認してみました。 数えきれないくらいの「Application」が出てきてビックリしました。 ありがとうございました。

関連するQ&A

  • アクセスでApplication.Caption

    アクセスでApplication.Captionに代わるコードはありますか? エクセルでなら Sub test01() Debug.Print Application.Caption End Sub は動きますが、アクセスだとコンパイルエラーになります。 CaptionがApplicationのメンバにないからだと思います。 いくつかのアプリケーションを跨いでVBAを動かしているのですが、 アクセスで自身のアプリケーション名、もしくはファイル名を取得するコードはありますか? ご回答よろしくお願いします。

  • エクセルvba リストを全範囲

    手作業でやるとしたら、 リストもしくはデータ一覧のどこかのセルをクリックして 「CTRL+A」を押すと、リスト全体を選択中にすることができます。 それをVBAのコードで書きたいのですが 何という単語だか忘れてしまいました。 「アクティブセルのあるデータベースの全て」という単語をおわかりになるかたいらっしゃいますか? これだけで通じるか不安です。 よろしくお願いします。

  • UWSCをエクセルVBAを翻訳して使いたい

    UWSCを勉強して使っているものなのですが、いかんせんエクセルVBAにくらべて普及率の問題かサンプルになるコードが落ちてないです。 たとえば、エクセルのデータベースを自動ソートしたいのですが、「UWSC エクセルソート」と検索してもサンプルになるコードはでてきませんが、「エクセルVBA ソート」と検索するとわんさかでてきます。 どちらのコードも使っているコードにそこまで違いがないように見えます、もし、UWSCとエクセルVBAの違いをまとめてあるサイトや知識のある方がいましたら教えていただけないでしょうか?

  • 簡単なエクセルVBA

    最近エクセルのVBAを勉強し始めたのですが、 1×1=1 1×2=2 1×3=3  ・  ・ 9×9=81 と出るようにしたいのですが、 Sub kuku() Do While i < 9 i = i + 1   Do While j < 9   j = j + 1   a = i * j   Debug.Print i; "×"; j; "="; a   Loop Loop End Sub としたところ1×9=9までしかでません。 どうすれば上手くループするようになるでしょうか? お願いします。

  • Excel VBA で CTRLキーを送る方法

    EXCEL VBA で他のアプリケーションにキーをコードを送り制御したく、Sendkeys を使ってみましたが、CTRLキー(単一キー)の送信が出来ません。Sendkeys "^", 1 では無反応。 制御されるアプリは右のCTRLキーと左のCTLキーではことなった動作をします。出来れば右のCTRLキー、左のCTLキーの送信方を教えてください。 VBAで負荷でしたら、Shell関数で呼び出せるようなものはありませんでしょうか。

  • Excel VBAの勉強のコツ

    新しい仕事に就いたのはいいですが、いきなりExcelでVBAを使わなければならない仕事を次々に任せられています。 職場の人はPCはまるっきり分からないので、一つの仕事にどういう作業が必要でどのくらいの時間が必要かも分からない状況です(そもそもExcelで何がどこまでできるかも分かってない)。 関数で済むような内容ならいいのですが、頼まれる仕事のほとんどが高度なVBA知識が必要なものが多くあります。 「だったらそれを上司に話せ」と言われそうですが、「できないなら辞めろ」みたいな雰囲気なので今必死に勉強しているところです。 VBAの本やネットの記事などもいくつか読みましたが書いてある内容だけは理解できても応用がなかなかできず、誰かにコードを教えてもらっていくつか出来上がりましたが、教えてもらったコードの意味が何度読んでも把握できません。 (どこで何の処理をしているか、などが分からない感じです) VBAに詳しい人はどこで詳しくなられたのでしょうか。 これからVBAを実務で使えるようにするために効率的な勉強方法などありますでしょうか。 勉強のコツを教えてくださいm(__)m

  • エクセルVBAにて アルファベットを数字に変換

    エクセルで、例えば J列は10列目で、 AB列は28列目ですよね。 VBAにて 入力がJだったら10を出力、 ABだったら28を出力 してくれるコードってどう書けばいいのでしょうか?

  • Excel VBAにてFFT

    Excel VBAにておよそ5万点のデータをFFTする方法についての質問をさせてください。 いつもはあるソフトを用いて実験データのFFTを行っているのですが、作業効率を改善したいと考えExcel VBAにてFFTをしたいと考えています。 私はC言語を少しですが学習したことがあるので、FFTWのようなFFT を実装したフリーソフトウェアが存在しているのを知っています。 時間節約のためExcel VBAにてFFTのコードを位置から書くのではなく、FFTWのアルゴリズムでExcel VBAで利用できるプログラムを使いたいと考えています。 この場合、自分でFFTWのコードを見ながらExcel VBA用にコードを書きかえるしか手はないのでしょうか。私はC言語もExcel VBAも未熟であるため、この作業を行うことができそうにありません、、、 Excel VBAで利用することのできるFFTのコードはあるのでしょうか。 なお、FFTするためのデータ点数は約5万点、多いと10万点ほどで、データ点数が2の累乗に限定しないものを使いたいと考えています。

  • エクセル VBAについて

    現在エクセルのVBAを勉強したいと考えています。 VBAを使用するにはVisual Basicをインストールしないといけないのでしょうか?普通にエクセルをインストールしてさえいれば使用できるのでしょうか?

  • エクセルVBAでの変数のスコープ

    基本的なことなのですが、教えて下さい。 当方、PHPやjavascriptを中心にプログラムしてきたのですが、 今回、エクセル+VBAでプログラムすることになり、VBAを勉強しているところなのですが、ちょっと戸惑っています。 いままでは、グローバル変数をなるべく使わないように、プログラミングをしてきたのですが、 VBAの勉強で、参考にしている本のコードは、全てグローバル変数を使っています。 そもそも、エクセルのシート・セルがグローバル変数のようなもの(?)なので、変数のスコープにこだわってもあまり意味がないのかな?とも思います。 エクセル+VBAである程度の規模のプログラムを作る際、 変数のスコープはどのように使い分けるのが良いのでしょうか? すみませんが、ご教授の程、よろしくお願いします。

専門家に質問してみよう