[VC2005] パスワードで保護されたExcelワークブックを開く方法

◆概要

この資料は、Microsoft(R) Visual C#で パスワードで保護されたExcelワークブックを開く方法について記述しています。Visual Studio C#2005及び2008、2010で正常に動作することを確認しています。

次の例では、C:\にtext.xlsというエクセルワークブックがあり、読み取りパスワード[1234]、書き込みパスワード[1111]と設定されているものとします。

  1. [プロジェクト]-[参照の追加]のCOMタブでMicrosoft Excel xx.x Object Libraryをダブルクリックします。
    xx.xの部分はExcelのバージョンによって異なります。例えば、Excel2010なら14.0になります。
  2. usingディレクティブの一覧の末尾に次の1行を追加します。
  3. using Excel = Microsoft.Office.Interop.Excel;
  4. フォームにlblpasswordというラベルとボタンを配置し、次のコードをボタンクリックイベントに記述します。
        private void button1_Click(object sender, EventArgs e)
        {
            string strReadPass = "1234";    //読み取りパスワード
            string strWritePass = "1111";   //書き込みパスワード

            // Excelのインスタンスを作成
            Excel.Application app;
            app = new Excel.Application();

            //Excelを表示
            app.Visible = true;

            //パスワードで保護されたExcelワークブックを開く
            try
            {
                Excel.Workbook workbook =
                     app.Workbooks.Open(
                     "C:\\test.xls",
                     Type.Missing, Type.Missing, Type.Missing,
                     strReadPass, strWritePass, Type.Missing,
                     Type.Missing, Type.Missing, Type.Missing,
                     Type.Missing, Type.Missing, Type.Missing,
                     Type.Missing, Type.Missing);

                lblPassword.Text = strReadPass.ToString();
            }
            catch
            {
                lblPassword.Text = "失敗!";
            }

        }

実行すると、パスワードで保護されたExcelファイルが開き、ラベルに読み取りパスワードが表示されます。



▼ページトップへ