読者です 読者をやめる 読者になる 読者になる

いろいろ備忘録日記

主に .NET と Python絡みのメモを公開しています。

実行環境にExcelがインストールされているかどうかを調査する.(Type.GetTypeFromProgID)

C#


TypeクラスのGetTypeFromProgIDメソッドを利用すると、その環境にてExcelがインストールされている
かどうかを簡単に調査できます。


やり方は、以下のように上記のメソッドにExcelを表すProgIDを指定します。
ちなみに、ワードの場合は"Word.Application"です。
戻り値として、nullが返ってくる場合はインストールされていないとみなします。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Gsf.Samples.CSharp {

    public partial class MainForm : Form {

        public MainForm() {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e) {
            //
            // 実行環境にExcelがインストールされているかどうかを判断.
            // (実際に与えているExcel.Applicationの部分をWord.Applicationにすればワードのインストール状況を確認できる。)
            //
            if(Type.GetTypeFromProgID("Excel.Application") != null){
                MessageBox.Show(
                    this, 
                    string.Format("Excelはインストールされています。: {0}", Type.GetTypeFromProgID("Excel.Application")));
            }else{
                MessageBox.Show(this, "Excelはインストールされていません。。");
            }
        }
    }
}

================================
過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。