しかもその複数開いているエクセルファイルというのも別々のファイルではなく、
同じファイルを重複起動したものであるため、
Set xlObj = GetObject([ファイルのパス],"Excel.Application")
というような方法を使うこともできません。
「一番アクティブなアプリケーション」という基準だけでエクセルオブジェクトを特定したいのですが、こういったことは可能なのでしょうか?
いろいろ調べましたが今ひとついい情報がなかったので書きこませていただきました。
↑本文の上のほうが切れてしまいましたので書き直します。
エクセルアプリケーションが複数(不特定)起動している状態で、
(1つのアプリケーション内に複数のブックが開いているのではなく、複数のエクセルアプリケーションが開いておりその中にブックを1つずつ持っている状態)
複数の中で最もアクティブになっているエクセルを特定し、その中のセルを参照するようなプログラムを作りたいのですが、
GetObjectでエクセルオブジェクトを取得しようすると、一番アクティブなものではなく一番最初に起動されたエクセルオブジェクトしか取得できません。
しかもその複数開いているエクセルファイルというのも別々のファイルではなく、
同じファイルを重複起動したものであるため、
Set xlObj = GetObject([ファイルのパス],"Excel.Application")
というような方法を使うこともできません。
「一番アクティブなもの」という基準だけでエクセルオブジェクトを特定したいのですが、こういったことは可能なのでしょうか?
いろいろ調べましたが今ひとついい情報がなかったので書きこませていただきました。
ツイート | ![]() |