• 締切済み

VBscriptでEXCELを起動

Presidentの回答

  • President
  • ベストアンサー率57% (12/21)
回答No.1

こんにちは。 >...何もおきずに終了します。 とはどういうことでしょうか? EXCELをどうしたいのでしょうか? EXCELファイルを操作をしても何も変わらないということでしょうか? 環境はWindowsNTServer+IIS+ASPであると思いますが、 VBでうまくいくのであればActiveXDLLを作成して、VBScriptから コールするのはいかがでしょうか?

wansada1
質問者

お礼

ご回答、誠にありがとうございます。 説明不足で申し訳ありません。 したいこととは、 空のEXCELを単純に開くという処理です。 しかし実行しますと、EXCELは起動せず(開かず)に処理は終了してしまいます。 そしてタスクマネージャーを見てみると、EXCEL実行中となったままになります。 (どこにもエクセルが開かれていないのに) ASP等をもっと勉強して解決していきたいです。 しかしそれでもわからなかったら、ご教授いただいたように ActiveXDLLをコールする方法で対策を練っていこうと思います。 それでは失礼いたします。

関連する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 という形でエクセルを起動して、データを挿入してから 画面上に表示という事をしています。 このときに、エクセルはちゃんと起動してくるのですが アクティブウインドウになってくれません。 タスクバーのボタンがピコピコ点滅するだけです。 クリックすると前面に表示されるのですが。。。 どうにか、自動的に前面に出すことはできないでしょうか?

  • VBScriptで自動リンクONでExcelファイルのOpen

    お世話になっております。VBScriptでExcelの既存ブックファイル をオープンさせるのを見よう見真似で作成したのですが、開こうと しているブックに自動リンクが設定されていて、毎回 「開いているブックには、ほかのファイルへの自動リンク・・・・」 と聞かれ「Y」をクリックしています。 希望としてはYを自動で選択してオープンしてくれたらと思っています。 調べてみてUpdateLinkがTrueとか書けばいいように思っていろいろ 試してみたのですがイマイチうまく行きません。 すいませんが教えてもらえませんか? [Source]------------------------------------------------------- Option Explicit Dim objExcel 'エクセルオブジェクトを作成します Set objExcel = CreateObject("Excel.Application") 'エクセル画面を表示します objExcel.Visible = True 'ワークブックを開きます objExcel.Workbooks.Open "C:\Book1.xls" 'エクセルオブジェクトの破棄 Set objExcel = Nothing

  • CreateObjectとGetObjectの違い

    当方エクセル2003です。 Sub test_CreateObject() Dim App As Excel.Application Dim MyFileName As String Set App = CreateObject("Excel.Application") MyFileName = ActiveWorkbook.Path & "\新規Microsoft Excel ワークシート.xls" With App .Workbooks.Open FileName:=MyFileName .Visible = True End With Set App = Nothing End Sub --------------------------------------------------------- Sub test_GetObject() Dim App As Excel.Application Dim MyFileName As String Set App = GetObject(, "Excel.Application") MyFileName = ActiveWorkbook.Path & "\新規Microsoft Excel ワークシート.xls" With App .Workbooks.Open FileName:=MyFileName .Visible = True End With Set App = Nothing End Sub この二つは何が違うのでしょうか? どちらも既存のエクセルファイルがが開きます。

  • SETを使ったほうがよい?

    accwessからエクセルファイルを開きたいのですが、 App.Workbooks.Open と、 Set xlBook = xlApp.Workbooks.Open とどちらを使った方がいいのでしょうか? ////////////////////////////////////////////////////////// Private Sub ファイル1_Click() Dim App As Object Dim MyFileName As String MyFileName = "D:\My Documents\test.xls" Set App = CreateObject("Excel.Application") App.Workbooks.Open FileName:=MyFileName App.Visible = True End Sub でも Private Sub ファイル2_Click() Dim xlApp As Object Dim xlBook As Object Dim FileName As String Const FolderName = "D:\My Documents\test.xls" Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(FolderName & FileName) xlApp.Visible = True Set xlApp = Nothing Set xlBook = Nothing End Sub ////////////////////////////////////////////////////////// でも開けました。 多分、SETを使うかどうかの違いだと思うのですが VBAでコードを作る際、どちらのコードを使った方がいいか教えてください。

  • VisualBaic2005でExcelファイルを読む方法

    Dim oExl As Excel.Application Dim WorkBookName As Excel.Workbook Dim Open_WorkSheet_Name As Excel.Worksheet oExl = CreateObject("Excel.Application") WorkBookName = oExl.Workbooks.Open("d:\book011.xls", , False) この時点でExcelのファイルが開きません。 また、oExl.Visible = True を実行するとExcel自体は開くのですが、ファイルのオープンは できません。また、終了時に oExl.Workbooks.Close() oExl = Nothingを実行すると Excel自体は閉じるのですが、プロセスは残りまます。 VB2005からExcelファイルを読む方法とクローズ処理の方法を 教えてください。よろしくお願いします。

  • ASP(VBScript)にてExcelアプリケーションが終了しない

    こんばんは VBScriptでExcelを読込みサーバのDBに内容を登録後に終了をしているのですがサーバにExcelアプリケーションが残ったままになっています。 strGetFileName = "C:\a.xls" 'Excelシート設定 Set xlsApp = Server.CreateObject("Excel.Application") xlsApp.Workbooks.Open strGetFileName Set xlsBook = xlsApp.Workbooks(1) Set xlsSheet = xlsBook.Worksheets(2) ← 二枚目のシート --中略-- xlsSheet.Application.Quit 'Excelアプリケーションのメモリ開放 Set xlsSheet = Nothing Set xlsBook = Nothing Set xlsApp = Nothing といったコーディングなのですが処理を重ねるたびにタスクマネージャに Excelアプリケーションが残り、重くなってしまいます。 終了の方法が悪いのではないかとは思いますが、実現方法がわかりません。 オブジェクトをオープンしているのでクローズ命令でも試してみましたがうまくいきませんでした。 どなたかご存知の方いらっしゃいましたら教えてください。 OS Win2000 ASP,BASP 言語 Html,VBScript,JavaScript

  • AccessからExcelの起動、Excel単独起動と違う動作になる。

    お世話になります。 Access2007からExcel2003を起動しようとしています。 実際には、AccessVBAより、以下のような呼び方をしています。 ----------------------------------- Dim xlApp As Object Dim xlBook As Object Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True xlApp.AutomationSecurity = 2 Set xlBook = xlApp.Workbooks.Open("C:\分析.xls") Set xlBook = Nothing Set xlApp = Nothing ----------------------------------- (手動で閉じる) 大体おおまかにこんな感じで作ってあります。 起動するExcelにはボタンが張り付けてあり 押すと処理が開始されます。 実際、起動そのものはされるのですが、同一ファイルにて 1.AccessからExcelを起動してボタンを押す 2.Excelを直接起動してボタンを押す の場合、Accessからの起動では、うまく処理が行われません。 直接起動でうまくいくので、ExcelのVBAの問題ではなく、 起動時の指定、または起動のやり方がまずいのでは、と とらえていますが、調べてもわからない状態が続いています。 (開き方や、マクロの呼び出し等方法を変えましたが  うまくいきません) Excelでは主に、ピポットテーブルを利用してPasteSpecialで値を 設定している作りになっています。 Access2007でもAccess2003でも同じだったと思います。 同様な経験をされ解決した方、方法をご存じの方、 ぜひ教えていただければと思います。

  • 「もし既にファイルを開いているなら、開かない」

    おはようございます。 accessからExcelのブックを開く処理をしています。 VBAでファイルを開く時に、「もし既にファイルを開いているなら、開かない」 という行為をしたいのですが、どのようにすればいいでしょうか? *************************************************************************** Sub サンプル() Dim xlApp As Object Dim xlBook As Object Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("C:\【Excel】\料理.xlsm") xlApp.Visible = True'ファイルを開く?表示する? Set xlApp = Nothing Set xlBook = Nothing End Sub *************************************************************************** このコードの、 xlApp.Visible = Trueを、 if xlBook がまだ開いてない then xlApp.Visible = True Else End If のような事がしたいのですが、可能でしょうか? ご教授よろしくお願いします。

  • VBScriptでEXCELシートに保護をかけたい

    いつも参考にしています VBAですと下記コードですが ActiveSheet.Protect Password:=11111, DrawingObjects:=True, Contents:=True, Scenarios:=True VBScriptのコーデイングが分かりません Set EXCELAPP = CreateObject("Excel.Application") Set BOOK = EXCELAPP.Workbooks.Open("@.xls") Set SHEET = EXCELAPP.Sheets(0) この後にシート保護のコーディングをしたいのですが。。。 ヒントをお願いします

  • CreateObject関数 引数にパスワード

    CreateObject関数を使ってエクセルを開く際に、 引数にパスワードを設定することは可能ですか? 新規Microsoft Excel ワークシート.xlsと言うファイルには、 読み足りパスワードとして0000と言うパスワードが設定されているのですが Sub Sample() Dim MyPath As String Dim MyFile As String Dim xlApp As Object Dim xlBook As Object MyPath = "C:\" MyFile = "新規Microsoft Excel ワークシート.xls" Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(MyPath & MyFile) xlApp.Visible = True Set xlApp = Nothing Set xlBook = Nothing End Sub このようなvbaコードで開く時に、 どうやってパスワードを設定すればいいでしょうか? Set xlBook = xlApp.Workbooks.Open(MyPath & MyFile),"0000" こうすると構文エラーになります。 Sub Sample02() Dim MyPath As String Dim MyFile As String MyPath = "C:\" MyFile = "新規Microsoft Excel ワークシート.xls" Workbooks.Open Filename:=MyPath & MyFile, Password:="0000" End Sub これのCreateObjectバージョンが知りたいです。