• 締切済み

VB6からExcelを最前面に起動する方法

Windows 11 Proの環境でVisual Basic 6のプログラムからExcelを最前面に起動する方法を教えていただけないでしょうか? 現在, ExcelApplicaiton = CreateObject(”Excel.Application") ExcelApplication.Visible = True ExcelApplication.WindowState = xlNormal となっています.

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

Visual Basic 6(今更なぜ)を指定しての質問の意味とか、よくわかりませんが、質問者はプロではないのですか? WEB照会で「vba エクセル 最前面に」で照会すると https://liclog.net/setforegroundwindow-function-vba-api/ VBAで指定したウィンドウを最前面に表示する APIの「‎SetForegroundWindow関数」や ーー http://fuyuzora.way-nifty.com/blog/2014/05/excel-vba-excel.html Excel VBA で Excel 画面を最前面に表示する や ーー 指定ウィンドウを最前面に表示する【AppActivate】【ExcelVBA】 https://vba-create.jp/vba-excel-appactivate/ などの記事があるが参考になりませんか?

tarobutch
質問者

補足

回答ありがとうございました。 ご教示いただいた情報等を参照にさせていただき試行錯誤の結果、 SetWindowPos()関数にて所望の結果を得ることができました。

関連するQ&A

  • VBscriptでのエクセルの起動について

    phpで開発しているのですが 問題はVBscriptでの問題と思われますのでここで 質問させてください。 vbscript上で Dim xl Dim book, sheet Set xl = CreateObject("Excel.Application") xl.Visible = false Set book = xl.WorkBooks.Add("http://**/****.xls") xl.DisplayAlerts = False -------- phpでのエクセルへのデータ操作 -------- xl.DisplayAlerts = true xl.visible = true set book = Nothing Set xl = Nothing という形でエクセルを起動して、データを挿入してから 画面上に表示という事をしています。 このときに、エクセルはちゃんと起動してくるのですが アクティブウインドウになってくれません。 タスクバーのボタンがピコピコ点滅するだけです。 クリックすると前面に表示されるのですが。。。 どうにか、自動的に前面に出すことはできないでしょうか?

  • エクセルから現在起動しているアクセスファイルをアクティブにしたい

    現在エクセルとアクセスを開いています。 エクセルマクロで現在開いているアクセスをアクティブにしたいのですがうまくいきません。 Sub アクセスをアクティブにする() Dim app As Object Set app = CreateObject("Access.Application") app.Application.Visible = True app.Visible = True End Sub これを実行すると新たに空のアクセスアプリケーションが開きます。 (app.Application.Visible = True)を抜いても同じです。 現在起動中のアクセスファイル(○○○.mdb)をエクセルからアクティブにするにはどうすればいいのでしょうか? ご教授よろしくお願いします。

  • VBからEXCELの起動方法

    はじめまして、さっそく質問ですが、 VBからエクセルを起動(ブックを開いている)しているのですが、以下の場合、マクロの登録の確認画面が開いてしまいます。マクロの確認画面を開かずエクセルを開く方法を教えて下さい。 Dim xlBook As Excel.Workbook Set xlBook = GetObject(strPathName) xlBook.Application.Visible = True xlBook.Windows(1).Visible = True

  • VBscriptでEXCELを起動

    今、非常に悩んでいる問題があります。 VBscriptでEXCELを起動したいのですがうまく行きません。 (Web画面であるボタンを押下すると、Webサーバ上のEXCELが開くというものです) プログラム的には (1) Dim excel Set excel = GetObject("", "Excel.Application") excel.Visible = True excel.Workbooks.Open "http://ホスト名/フォルダ名/ファイル名.xls" Set WK_excel = Nothing (2) Dim excel Set excel = CreateObject("Excel.Application") excel.Visible = True excel.Workbooks.Open "http://ホスト名/フォルダ名/ファイル名.xls" Set WK_excel = Nothing の二通り(他いろいろ)を試したのですが、何もおきずに終了します。 同じことをVB6.0でするとうまく行くのですが・・・ はっきり言うとVBscriptに関して知識がなく 質問内容も説明が分かりにくいかもしれませんが よろしくお願いいたします。

  • VBSで起動したアプリが前面表示しない

    Powerpointをコンテキストメニューに「読み取り専用」を追加するために以下のVBscriptを起動すると前面表示されません。 どうしたら前面表示されますでしょうか? 起動コマンド wscript.exe "C:\Program Files\Microsoft Office\Office14\OpenPptAsReadOnly.vbs" "%1" 以下がVBscript(OpenPptAsReadOnly.vbs)です。 Dim strPPTFileName Dim objPPTApp '引数のチェック If WScript.Arguments.Count <> 1 Then WScript.Quit 'ファイル名取得 strPPTFileName = WScript.Arguments(0) '起動 Set objPPTApp = WScript.CreateObject("Powerpoint.Application") objPPTApp.Visible = True '読み取り専用で開く Call objPPTApp.Presentations.Open(strPPTFileName,True) '終了処理 Set objPPTApp = Nothing WScript.Quit

  • メッセージボックスを前面に表示させるには?

    Sub 教えて() Dim ExAp As Application Dim ExBk As Workbook Dim ExSh As Worksheet Set ExAp = CreateObject("Excel.Application") Set ExBk = ExAp.Workbooks.Add Set ExSh = ExBk.Worksheets(1) ExAp.Visible = True ExAp.WindowState = xlMaximized ThisWorkbook.Worksheets(1).Activate MsgBox "前面表示させたいお!" Set ExAp = Nothing Set ExBk = Nothing Set ExSh = Nothing End Sub これを実行するとメッセージボックスが隠れてしまいます。 どうしたらよいでしょうか?

  • VB2010でExcelを開くと実行時エラーになる

    持っているマニュアルには載っていないので、質問させていただきます。 ボタンをクリックしたら、特定のExcelファイルを開くプログラムを作成中です。     Dim oExcel As Object oExcel = CreateObject("Excel.Application") oExcel.Visible = True oExcel.workbooks.Open(gxls) oExcel.Selection.ClearContents() こんな感じで起動するにはするのですが、現物をダブルクリックで起動したときとマクロ(VBA)の動きが異なります。 プログラム起動では保護されているセルにマクロが記述しに行こうとすると「実行時エラー ”1004”」となってしまいます。 現物をダブルクリックする場合は、問題なく動きます。 どうしてなのかどうしてもわかりません。 どなたかご教授願います。

  • htmlに記述されたVB ScriptからExcelを起動しようと思っ

    htmlに記述されたVB ScriptからExcelを起動しようと思っています。 下記のようなソースコードで起動しています。 ところが一部のレンタルサーバでの起動を確認していますが、別の一部のレンタルサーバでエラーが発生してしまいます。 VB Scriptはローカルパソコン上での起動と理解していたため、サーバによって起動しないという点がどうも納得できません。 何か他に原因があるのでしょうか?大変お手数をおかけしますが、判る方いらっしゃいましたらご教授ください。 【エラー】 set xlsApp=createobject("Excel.Application") エラー:ActiveXコンポーネントはオブジェクトを作成できません。:'Excel.Application' 【エラーの発生するサーバ】 ■SIX CORE http://klshare.sixcore.jp/test_list.html ■xserver 【正常動作するサーバ】 ■WADAX ■LINKCLUB(LHX) ■さくらサーバ ■ローカルパソコン 【ソース】(test_list.html) <html> <head> </head> <body> <script Language="vbScript"> set xlsApp=createobject("Excel.Application") with xlsApp .workbooks.open "http://klshare.sixcore.jp/test.xls" .visible=true end with </script> </body> </html>

  • インターネットで調べてVBSで下のようなものを作ってみました。

    インターネットで調べてVBSで下のようなものを作ってみました。 やりたいことは、IEを起動して複数のサイトを複数のタブで表示 したいのですが、サイトの種類分IEも起動してしまいます。 考えているようなことはできないのでしょうか。 ========ここから下です======== Option Explicit Dim objIE Dim objShell 'Shell.Application Set objShell = CreateObject("Shell.Application") Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.okwave.jp/" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.google.co.jp/" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.yahoo.co.jp/" ======================= よろしくお願いいたします。

  • vbスクリプトからexcelのVBAを起動したい。

    vbスクリプトからexcelのVBAを起動したいので、初心者ながら下記のようにコーディングしましたが、excelのVBA;main()が実行できません。  <excelのVBA;main()は単独では正常に起動します。> vbスクリプトからexcelのVBAの起動の方法を教えて下さい。 そのスクリプトをタスク(元旦)に起動したいです。 <vbスクリプト コーディング> dim exlApp On Error Resume Next set exlApp = createobject("Excel.Application") exlApp.visible = true exlApp.Workbooks.Open "C:\年賀状.xls" exlApp.run "Main" If Err Then WScript.Quit End IF If Not(exlApp Is Nothing) Then exlApp.Quit set exlApp = nothing End If

専門家に質問してみよう