投稿時間: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)
以上、よろしくお願いいたします。
|