分かりやすく、使いやすく。

オブジェクト名(コード名)を指定してワークシートオブジェクトを取得する

スポンサーリンク

PHPExcel でオブジェクト名(コード名)を指定してワークシートオブジェクトを取得するには getSheetByCodeName メソッドを使用します。このメソッドは指定されたワークシートが存在しない場合は NULL を返します。

ちなみにオブジェクト名(コード名)は VBA 編集画面のプロジェクトエクスプローラーやプロパティウインドウで確認することができます。このページでは次の画像のように MySheet1, MySheet2, MySheet3 というオブジェクト名をもつファイルを対象として処理を実行します。

オブジェクト名(コード名)の確認

以下のサンプルコードでは、 MySheet2 という名前のワークシートを取得しています。

php(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//PHPExcelの読み込み
require_once("./Classes/PHPExcel.php");
 
//既存のエクセルファイルの読み込み
$obj_reader = PHPExcel_IOFactory::createReader('Excel2007');
$obj_book   = $obj_reader->load('test.xlsx');
 
//オブジェクト名(コード名)を指定してオブジェクトを取得します
$obj_worksheet = $obj_book->getSheetByCodeName("MySheet2");
 
//指定した名前のワークシートが存在しない場合は NULL がセットされます
if(!is_null($obj_worksheet)){
    print "取得したシートの名前→" . $obj_worksheet->getTitle() . "\n";
}else{
    print "指定した名前のシートは存在しません\n";
} 

実行結果は以下の通りです。

取得したシートの名前→Sheet2 
スポンサーリンク