• ベストアンサー

window.open でExcelファイルを開く

window.openでブラウザからExcelファイルを開いています。 function test(){  window.open('test.xls',null); } IE6+XPですとExcelファイルのみが開いてくれるのですが、IE7.0+Vistaでは空のIEウィンドウも一緒に開いてしまいます。 window.openを使いつつ、空ウィンドウが開かないようにする良い方法は無いでしょうか。 IE6でもIE7でも同じようにExcelファイルが開けることが理想です。

質問者が選んだベストアンサー

  • ベストアンサー
  • t_netbug
  • ベストアンサー率34% (15/44)
回答No.3

location.href = "file://パス+ファイル名.xls"; だとIE7ではどのように動作しますか? IE7は不安定なので入れてないので検証していないので何とも言えませんが、 条件付きコメントと組み合わせて作れそうな気がします。 http://questionbox.jp.msn.com/qa2298397.html?StatusCheck=ON

参考URL:
http://www.keynavi.net/ja/bugh/comments.html
mt2008
質問者

お礼

回答ありがとうございました。 他人の作ったプログラムをIE7にも対応させる必要があり、なるべく手を加えたくない為にこの場を借りて質問させていただきました。 結局、window.openのままでは駄目そうでしたので、IE7の場合はlocation.hrefで開くことでお茶を濁そうと思います。

mt2008
質問者

補足

location.href の場合、IE7ではExcelが起動してファイルを開きます。 ちょうどIE6でwindow.openでExcelファイルを起動したのと同じようになります。 現在は、t_netbugさんの仰る様に、navigator.appVersionでブラウザ情報を取得し、IE6はwindow.open、IE7はlocation.hrefと使い分けることで逃げているのですが、もっとスマートな方法はないかと思いまして質問させて頂いた次第です。 #参考URL非常に参考になりました。

その他の回答 (2)

  • Gizensha
  • ベストアンサー率34% (207/608)
回答No.2

WSHとかFileSystmObjectとかヒントになるのかも。

mt2008
質問者

お礼

回答ありがとうございました。 他人の作ったプログラムをIE7にも対応させる必要があり、なるべく手を加えたくない為にこの場を借りて質問させていただきました。 結局、window.openのままでは駄目そうでしたので、IE7の場合はlocation.hrefで開くことでお茶を濁そうと思います。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

vbscriptで開くのが妥当では?

mt2008
質問者

お礼

回答ありがとうございました。 他人の作ったプログラムをIE7にも対応させる必要があり、なるべく手を加えたくない為にこの場を借りて質問させていただきました。 結局、window.openのままでは駄目そうでしたので、IE7の場合はlocation.hrefで開くことでお茶を濁そうと思います。

関連するQ&A

  • IE7でのwindow.close後のwindow.openについて

    javascriptで、ボタンクリックでウィンドウを開くときに、同じ名前のウィンドウが既に開いていたら一回閉じで、開き直すというロジックを書いてます。 これはIE6では正常に動いているのですが、IE7になると、ウィンドウが閉じたまま、開き直さないで何も表示されなくなってしまいます。たまに開くときもあるのですが。 ボタンクリック後のコードを載せます。 ちゃんと開く方法はないでしょうか? function openwindow(){ var newWindow = window.open("test.html", "test"); if(newWindow.name == "test") { newWindow.close(); } oneScdWindow=window.open("test.html", "test"); }

  • window.openしたウィンドウのwindow.onblurについて

    window.openしたウィンドウのonloadに  window.onblur = function() { window.close(); } を設定しているのですがFirefox3.6、Opera10.51ではウィンドウからフォーカスが外れたらウィンドウが閉じるのですが(期待している動き通り)、 IE6のみwindow.openしたウィンドウをクリックしたと同時にウィンドウが閉じてしまいます。 どうすればIEでもFirefox,Operaと同じ動きをさせることが出来ますでしょうか・・・

  • エクセルファイルをIE のウィンドウで開く

    初心者です。よろしくお願いします。 ページからエクセルファイルを開くリンクの設定をしています。 function openWindow() { window.open ("file://(パス指定)sample.xls"); } のように設定してクリックするとエクセルファイルが開くようにはなりました。 このエクセルファイルをIEウィンドウで開くようにしたいのですが リンク先のファイルのアプリケーションの指定はどのように行ったらよいでしょうか。 (フレームがIE で中身はエクセルファイル) ご教示よろしくお願いいたします。

  • window.open でのファイル指定方法

    初心者なので困ってます。 よろしくお願いします。 window.open を使って別ウィンドウでエクセルファイルを開きたい場合、ファイル指定はどうしたらよいでしょうか。 イントラネットのページなので共有のファイルサーバー名からパスを指定していますが 該当ファイルがありません とメッセージが出てしまいます。 ファイル場所 \\fileserver01\folder01\file.xls 記述 window.open("file:///\\fileserver01\folder01\file.xls"); 他のサイトを探してみましたがリンク先がURLのサンプルしか見つかりませんでした。 どなたかファイル名指定の場合の記述方法をご教示下さい。 よろしくお願いします。

  • window.openで開いたウインドウのボタンのアクションについて

    こんにちは! お聞きしたいのですが、 ブラウザNetscape 4.06で window.openで開いたウインドウ上のHTML <input type=button>内で、 java scriptの自作のファンクションを呼び出せないのですが、 ”onClick”ではだめなのでしょうか? 4.06以上やIEでは問題ないのですが。。。 どなたかわかるたいらっしゃったら教えてください。 それと、window.openで開いたときになぜか 2回読み直してしまうのでこれについても わかる方いましたら、お願いします。

  • window.open _self でとんでくれない

    初歩的な質問だと思うのですが。 《test1.htmlのソース》 <html> <head> <title>test1</title> </head> <SCRIPT language=JavaScript> <!-- function jump(){ xurl="test2.html"; window.open(xurl,"_self"); } --> </SCRIPT> <body> <form> <input type=submit value="OK" onclick="jump()"> </form> </body> </html> これで[OK]ボタンをクリックしてもtest2.htmlを表示してくれません。 _selfを付けなければ別ウィンドウで表示されるのですが、自身のウィンドウに表示させるにはどうしたらいいのでしょうか。 ブラウザはIE6です。 よろしくお願いいたします。

  • onbeforeunload時のwindow.openが効かないのです

    onbeforeunload時のwindow.openが効かないのですが… ページ内に設置した「閉じる」ボタン、またはブラウザの「閉じる」を押したときに、 新規ウィンドウが立ち上がるようにしたいのです。 複数台でテストすると、半数が新規ウィンドウが立ち上がりません。 まずIEでunloadが効かない場合がある事から、 以下サイトよりonbeforeunloadのスクリプトを引っ張りました。 http://blog.moxiecode.com/2008/04/08/unload-event-never-fires-in-ie/ で、 <SCRIPT LANGUAGE="JavaScript"> ~上部省略~ function unload() { //alert('Unload event occured.'); window.open('test_b.php'); }; </script> <body onbeforeunload="unload()"> と記述したのですが、 前述で新規ウィンドウが立ち上がらなかった台が、 アラートだと出すのですが、window.openに反応しません。 何か解決方法はありますでしょうか。 javascriptに関して全くの初心者ですので、四苦八苦しながらテストしています。 もし解決方法をご存じの方はソース例を教えて頂くと大変助かります。 宜しくお願いします!

  • ブラウザIE上で開いたExcelファイルを書換え、またサーバーに保存するには

    ブラウザIE上で、サーバー上にあるExcelファイル (例えば http://test-test.com/aaa.xls)を開き 開いたExcelファイルaaa.xlsの内容を書換え、 ブラウザIE上で、またサーバーに保存したいと思います。 保存の仕方を教えて下さい。 WindowsXP Excel2000

  • ファイルオープン

    MFCのVC++6.0を使用しています。 ファイルオープンのことなんですが FILE *f; char buf[2000]; if((fopen("C:●●,"w"))==NULL)){ MessageBox("ファイルオープンエラー"); } while(fgets(buf,1000,f)!=NULL{ //処理 } fclose(f); } などで例えばリストボックスにファイルの内容を書き出したり はできます。 私の行いたいことはそのままファイルを開くということです。 例えばエクセルなどのファイル○○.XLSなどを開いたときに何かを 媒体にせずにそのまんま新ウィンドウでエクセルとしてファイルを 開くということです。どうすればいいのか調べてもわかりません。 教えて下さい。

  • マクロでファイルオープン

    エクセルのマクロでtest.xlsファイルをオープンする際に元々test.xlsファイルの属性が読み取り専用になっているものを、読み取り専用チェックをはずした状態でオープンすることは可能でしょうか? Workbooks.Open Filename:="test.xls" ReadOnlyRecommended:=False とかやってもなかなか上手くいきません。

専門家に質問してみよう