IE11 で Excel のブックにアクセスする / JavaScript を使用して Excel のブックのセルにデータをセットして更新

⭕ まず、信頼するサイトlocalhost( またはイントラネットのサーバ ) を登録します。



⭕ レベルのカスタマイズで『スクリプトを実行しても安全だとマークされていないActiveX コントロール』を『有効』にします。



▼ 以下の .reg ファイルをエクスプローラからダブルクリックしてインポートする事もできます
1.Windows Registry Editor Version 5.00
2. 
3.[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2]
4."1201"=dword:00000000

▼ .reg ファイルをダウンロード
その上で以下のコードを localhost で実行が可能です。
01.<!DOCTYPE html>
02.<html>
03.<head>
04.<meta http-equiv="X-UA-Compatible" content="IE=edge">
05.<meta http-equiv="Content-type" content="text/html; charset=shift_jis">
06.<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
07.<script>
08. 
09.// *************************************
10.// IE 用オブジェクト作成関数
11.// *************************************
12.function newObject( className ) {
13. 
14.        var obj;
15. 
16.        try {
17.                obj = new ActiveXObject( className );
18.        }
19.        catch (e) {
20.                obj = null;
21.        }
22. 
23.        return obj;
24. 
25.}
26. 
27.// *************************************
28.// Excel 用オブジェクト 格納変数
29.// *************************************
30.var excelApp = null;
31.var myBook = null;
32. 
33.// *************************************
34.// Exce ブックを読み込んで更新して終了
35.// *************************************
36.function excelTest() {
37. 
38.        // Excel オブジェクト作成
39.        if ( excelApp == null ) {
40.                 excelApp = newObject("Excel.Application");
41.        }
42. 
43.        // Excel ブックの読み込み
44.        myBook = excelApp.Workbooks.Open("C:\\Users\\lightbox\\Documents\\Book1.xlsx");
45. 
46.        // アクティブなウィンドウを最大化
47.        excelApp.ActiveWindow.WindowState = 2;
48.        // 表示時様態にする
49.        excelApp.Visible = true;
50. 
51.        // jQuery でオブジェクトの一覧を取得して Excel のセルに情報をセットする
52.        var row = 0;
53.        $.each( window.navigator, function( key, value ){
54. 
55.                row++;
56.                // シートのセルに書き込み
57.                myBook.Sheets("Sheet1").Cells(row, 1) = key;
58.                myBook.Sheets("Sheet1").Cells(row, 2) = typeof value;
59.                myBook.Sheets("Sheet1").Cells(row, 3) = value;
60. 
61.        });
62. 
63.        // 保存
64.        myBook.Save();
65. 
66.        // Excel の終了
67.        if ( excelApp != null ) {
68.                excelApp.Quit();
69.                excelApp = null;
70.        }
71. 
72.}
73. 
74.</script>
75.</head>
76.<body>
77.<input id="export" type="button" value="Excel のテスト" onclick="excelTest();">
78.</body>
79.</html>




localStorage に保存して、次回の表示に使用する

タブやアコーディオンや、限られた視野の範囲で効率良く表示するコンテンツは、最後に表示したものを記憶しておくのが良いと思います。

物事を始めたり終えたりするのに、適当な時機
01.<script>
02.$(function() {
03.        var target_tab = 0;
04.        if ( typeof(localStorage["old_active"]) != 'undefined' ) {
05.                target_tab = localStorage["old_active"];
06.        }
07.        $( "#mytabs" ).tabs({
08.                active: target_tab,
09.                activate: function( event, ui ) {
10.                        localStorage["old_active"] = $( this ).tabs( "option", "active" );
11.                }
12.        });
13.});
14.</script>
15. 
16.<div id="mytabs">
17. 
18.        <ul>
19.                <li><a href="#tabs-1">潮時</a></li>
20.                <li><a href="#tabs-2">確信犯</a></li>
21.                <li><a href="#tabs-3">おもむろに</a></li>
22.        </ul>
23.        <div id="tabs-1">
24.物事を始めたり終えたりするのに、適当な時機
25.        </div>
26.        <div id="tabs-2">
27.<p>1 本人が悪いことでないと確信してなされる犯罪</p>
28.<p>2 《1から転じて》悪いことだとわかっていながら行われた犯罪や行為</p>
29.<p>◆犯罪というほど重大な行為でない場合にも用いる。2 の意はもともと誤用とされていたが、文化庁が発表した平成14年度「国語に関する世論調査」では、50パーセント以上の人が 1 ではなく 2 の意で用いると回答した。</p>
30.        </div>
31.        <div id="tabs-3">
32.【徐に】落ち着いて、ゆっくりと行動するさま
33.        </div>
34.</div>

jQuery 部分は全て Google のホスティングを使用しています。