[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/09/10(Fri) 11:01
投稿者名:ぺる
URL :
タイトル:
「名前をつけて保存」ダイアログ
VB6.0からExcel2000にデータを渡し、そのExcelをファイルとして保存したいのですが、
「名前をつけて保存」ダイアログを表示する際、そのダイアログからフォルダの階層を
辿っていくと、途中でダイアログが他の画面の後ろに隠れてしまいます。

これを回避しようとして、ダイアログを表示する前に、『SetWindowPos』を入れている
のですが、いまくいきません。
そもそも、Excelから表示されるダイアログを常に最前面に表示することは
可能なのでしょうか?

下に、私が書いているコードを挙げておきます。
(ここでは、Excelをプレビュー後、Excelを閉じるときに「名前をつけて保存」ダイアログが
表示されます。『SetWindowPos』は入れる場所がわからなかったので、プレビュー前と、
ダイアログ表示前の2箇所に入れています。)

lhwnd = GetForegroundWindow
Call SetWindowPos(lhwnd, -1, 0, 0, 0, 0, &H40 Or &H1 Or &H2)
'シートの印刷プレビュー
xlSheet.PrintPreview
        
Dim myFileName As Variant
lhwnd = GetForegroundWindow
Call SetWindowPos(lhwnd, -1, 0, 0, 0, 0, &H40 Or &H1 Or &H2)
'名前を付けて保存ダイアログを表示
myFileName = xlApp.GetSaveAsFilename(C_PRT_DEFAULT, C_PRT_FILE_VALUE)

以上、よろしくお願いいたします。