• ベストアンサー

=INFO("numfile") の戻り値の意味

Sheet1、Sheet2、Sheet3 から成る新規ブックを開いて、セル A1 に入力した =INFO("numfile") の戻り値について、 Excel 2002 では 6 Excel 2013 では 11 ですが、これらの数値の意味(実体)は何なのでしょうか? ちなみに、Excel 2013 の[Excelヘルプ]には添付図のように記載されていますが・・・ INFO(検査の種類) 検査の種類__戻り値 "numfile"___開かれているワークシートの枚数

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

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.3

おっしゃるように「Excelヘルプ」の説明は、紛らわしいというより、正しくないでしょう。 1つのExcelアプリケーションに読み込まれているWorkBookにあるWorkSheetの総数です。WorkBookが複数開かれていれば、それらにあるWorkSheetの合計です。アドインや2003までなら隠しファイルのPersonal.xlsも含まれるようです。アドインなどでロックがかかっていればそのシートは開くことはできません。1つのWorkBookにあるWorkSheetの数を返しているのではありません。Graph Sheetなどは含まれません。したがって、1つのWorkBookのシート数をどうしてもこの関数で知りたければ、そのWorkBookを開く前にBook1を開いて、この関数でそれまでのシート数を取得し、目的のBookを開いてこのBookのシート上でもう1度この関数を使って総シート数を取得して、前に取得したシート数を引くことになります。使い物になりませんね。 こんなことをするより、ActiveWorkBook.WorkSheet.Countのユーザー関数を作れば取得できます。

msMike
質問者

補足

私の Excel 2002 では、 分析ツール 分析ツール - VBA の2個のアドインを組み込んでいます。それらを外し、かつ、“いわゆる”ワークシートの Sheet1 以外を削除したときの =INFO("numfile") 戻り値は 1 になりました。 試しに、標準装備されている合計9個のアドインを組み込んでみると、44 になります。 このことから、今後は次のことを肝に銘じておくことにします。 ヘルプが「開かれている」とか「アクティブ」とか言っても騙されるな! 「ワークシート」と言ってもお馴染みの Sheet1、Sheet2、… だけではないのだ! Excel には、“隠れ切支丹”的な、あるいは、“忍者くの一”的なワークシートが潜んでいるものと思え!

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

>開かれているワークシートの枚数 文字通りその通りです。 グラフシートやモジュールシートは数に含まれません。 >Excel 2013 では 11 ソルバーなどのアドインでは、プロジェクトを開けないので何枚のワークシートを含んでいるのか目で見ることはできませんね。

msMike
質問者

お礼

コメント、ありがとうございました。

回答No.1

目に付いているSheet1~3以外に、いくつかワークシートが開いてるって話だと思いますが。 例えば、 Alt+F11を押してVBEを起動すると、Sheet1~3が含まれるBook1(多分)以外のアドインなどが確認できるのでは。 Excel起動時に[Ctrl]キーを押しながら起動する、余計なアドイン等を起動しないセーフモードで同様の関数を確認すると、数が減るのでは。

msMike
質問者

お礼

コメント、ありがとうございました。

msMike
質問者

補足

》 目に付いているSheet1~3以外に、いくつかワークシート 》 が開いてるって話だと思いますが。 ええっ?! ワークシートやシート見出しの非表示設定にしていなければ、通常は横スクロールバーの左端に表示されている Sheet1、Sheet2、… 等の見出しを持つシートがワークシートだと思っていました。私の不得手なマクロやグラフ専用のものはそれぞれマクロシートやグラフシートと称して、ワークシートとは言わないのでは? 貴方が仰ることが本当なら、特に注意書きもなく、ヘルプがいともアッサリと記載した「開かれているワークシートの枚数」(Number of active worksheets in the open workbooks.)は嘘っぱちですね。(英文の方の直訳は、開いたブック内のアクティブ・シート数! )

関連するQ&A