Visual Stdio 2005 Standardを使っています。
環境はWinXP(SP2)
フォームを使ってInternetExplorer操作の作業は作ったことがあるのですが、
既に開いているエクセルのキャッチ後の操作、
そもそもエクセルの操作を行うには何処から勉強を始めればよいでしょうか?
開発はVBを使って行いたいと思っております。
参考までに
'フォアグラウンドウィンドウの取得
FGhWnd = GetForegroundWindow()
Do
'500回したら終了
Cnt = Cnt + 1
If Cnt = 500 Then
MsgBox(取得に失敗しました)
End
Else
'ウィンドウタイトルの取得
WndTitle = "
GetWindowText FGhWnd, WndTitle, 1000
'ウィンドウタイトルの表示
If InStr(WndTitle, Excel) <> 0 Then
Exit Do
End If
FGhWnd = GetNextWindow(FGhWnd, 2)
End If
Loop
こういった作業を行わなくてはならないかと思うと少し寒気がw
どなたかご教示宜しくお願い致します。
自身、前々から既存Excelプロセスへのアタッチについて気になっていたので
ググってみました。
恐らく、以下が参考になるのではと思います。
>> Re: Attach to open Excelprocess
> http://www.tech-
archive.net/Archive/DotNet/microsoft.public.dotnet.framework.windowsforms/2006-
11/msg00013.html
上記、回答に記載されていますが、MSの技術文章(KB)です。
>> How to use Visual C# to automate a running instance of an Office program
(KB316216)
> http://support.microsoft.com/?scid=kb%3Ben-us%3B316126&x=16&y=9
言語(C#→VB.net)については自身で読み替えてください。
# 書かれたコード片って、.netなのでしょうか? VB.netは触ったことがないので
# わかりませんが。
URL長すぎてびみょ~な折り返しになったので orz
> http://www.tech-archive.net/Archive/DotNet/
microsoft.public.dotnet.framework.windowsforms/2006-11/msg00013.html
BindToMonikerというメソッドを使うことにより取得できるみたいですね。
分かりました。
頑張ってみます。
書かれているコードはVC#の手順が載っていると説明が記されているのですが、VBでも使
えるようなコードに見えます。だから手順にそって試してみたいと思います。
ありがとうございました。