• ベストアンサー

エクセルのシートの数を数えたいのですが…

現在、1000ファイル以上のエクセルファイルがあります。 各エクセルに何シートずつあるのか数を数えたいのですが、1回1回開いて数えるしかないでしょうか? なにか良い方法があったら教えてください。

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

  • ベストアンサー
  • ta123
  • ベストアンサー率51% (95/186)
回答No.2

“1回1回開いて数える”をマクロにしてみました。新規のブックにこのマクロを貼り付けて、対象ファイルのあるフォルダーに格納してマクロを実行してみてください。時間はかかると思います。 Sub SheetsCount() Dim i As Long Dim MySheet As Worksheet Set MySheet = ThisWorkbook.Worksheets("Sheet1") With Application.FileSearch .LookIn = ThisWorkbook.Path .SearchSubFolders = True .Filename = "*.xls" If .Execute > 0 Then MySheet.Cells(1, 1).Value = "ファイル名" MySheet.Cells(1, 2).Value = "シート数" For i = 1 To .FoundFiles.Count If Not (.FoundFiles(i) = ThisWorkbook.FullName) Then MySheet.Cells(i + 1, 1).Value = .FoundFiles(i) Workbooks.Open Filename:=.FoundFiles(i), _ UpdateLinks:=False, ReadOnly:=True MySheet.Cells(i + 1, 2).Value = ActiveWorkbook.Sheets.Count ActiveWorkbook.Close End If Next End If End With End Sub

-mozuku-
質問者

お礼

ありがとうございます。参考にさせて頂きます。 まだ悪戦苦闘中ですが、頑張ります!

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 それらのファイルが全部同じフォルダ、またはあるフォルダのサブフォルダ群に入っているなら、ExcelVBAで自動集計ができる。  実行できる全ソースを掲載する事はできないので、キーワードを載せておく。興味があったら色々調べてみると良いだろう。 ・FileSystemObjects ・再帰(サブフォルダ分けしている場合のみ) ・Excel.Workbooks(n).Name ・Excel.Workbooks(n).Worksheets.Count

-mozuku-
質問者

お礼

ありがとうございます。参考にさせて頂きます。 まだ悪戦苦闘中ですが、頑張ります!

関連するQ&A

  • EXCELのシートの数を知りたい

    Excelのブックに数知れずシートがあります。 おおよそ200枚以上あります。いったい何枚シートがあるか 数を数えていくのも大変ですので、ブック内のシートの数を調べられる方法はないでしょうか。マクロなど使用してもOKです。

  • エクセルでシートの数を数える関数ってありますか?

    エクセル2003でファイル内のシートの数を数える関数があれば教えてください。

  • Excelの「新しいBOOKでシート数」1を指定しても反映されない。

    こんにちは。 Excelの「新しいBOOKでシート数」1を指定しても右クリックのメニューから新規作成でExcelファイルを作成した時にシート数が3になり反映されていません。 Excel.exeからの起動ですとシート数が1で大丈夫です。 調べますと「No.292780」に同じような質問がありましたが検索しても出てきません。 多分どこかにテンプレートファイルがあると思われますがご存知の方宜しくお願い致します。 調査方法としてレジストリの位置を教えて頂いても可です。 OS:WindowsXPPro Office:Office2000 以上、宜しくお願い致します。 (参考) http://oshiete1.goo.ne.jp/kotaeru.php3?q=292780

  • エクセルのシートの数について

    エクセル2000をWindowsで使用しています。 エクセルでは一つのファイルに 複数のシートを設けることができますが、 このシートというのは、何シートくらいまでなら 増やすことができるのでしょうか。 あまり増やしてしまうとファイルが 壊れてしまうのでしょうか。

  • エクセル2010 シート数変更

    エクセル2010使用しています。新規作成後のシート数が3シートで変わりません。 ファイル ⇒ オプション ⇒ ブックのシート数 【X】枚。【X】枚にならず3枚。 あるサイトに象:Excel シート枚数の変更方法は、あちこちに情報があるので設定されている方は多いと思うのですが、設定したにも関わらず1枚にならない場合があって気持ち悪い思いをしたことはありませんか? デスクトップやフォルダウィンドウで右クリックして表示されるショートカットメニューから、[新規作成]-[Microsoft Excelワークシート]を選択して作成した場合です。 この場合、作成されたシートの枚数は初期設定のまま3枚なのです。せっかく[オプション]ダイアログで変更したのにかかわらず。 これは、Excelを起動しておいてから新規作成するのと、デスクトップなどで新規作成するのとでは、処理の方法が異なっているために発生する現象です。 以下の操作を行っておけば、フォルダウィンドウで右クリック-新規作成を行った場合のシート枚数も変更することができます。 ▼操作手順 :右クリック-新規作成からのシート枚数変更 「ShellNew」フォルダを探す  (OSのインストールされているフォルダ下にあります)  ↓ 「ShellNew」フォルダにあるExcelファイルを開く  (Excel 2002の場合「Excel9.xls」というファイル)  ↓ シートの枚数を変更  ↓ 上書き保存を行ってからExcelを終了 つまりデスクトップなどフォルダウィンドウでの、右クリック-新規作成で作られるExcelファイルは、「ShellNew」フォルダにあるファイルをコピーして作成しているということです。 Cドライブ ⇒ windows ⇒ ShellNew ⇒ EXCEL12 ⇒ 開く ⇒ ファイル ⇒ オプション ⇒ ブックのシート数 【X】枚 ⇒ 上書き保存 ⇒ 読み取り専用です・・・OKをおして・・。⇒ アクセス許可がありません。代わりに【ドキュメント】ホルダに保存しますか? この先が不安で実施していませんが、手順が合っているのでしょうか。違う方法があるのでしょうか。 ※OKWAVEより補足:「ひかりTVのサービスやISPぷらら」についての質問です。

  • エクセルのワークシートの並べ替え

     エクセル2000を使っていますが、シートがsheet1~sheet**まで並んでいます。(そのファイルによって数は違いますが、シート名は必ずしも1~ではなく、また、必ずしも1つづつ増える数でもありません。どのファイルもシートは100以上あります) これを逆順に並べ替えたいのですが、どのようにすれば良いのでしょうか?多分、マクロを組めば良いのでしょうが。。。。。  ちなみに、全てのシートにデータが入っています。

  • EXCELのシート数

    OFFICE2000SR-1のEXCELなんですが、新しいBOOKでシート数を「1」にしたいんです。ツール→オプション→で「新しいBOOKでシート数」を1に指定したんですけど、やはり「新規作成」でEXCELを起動すると、シート数は「3」のままです、どうすれば「1」に設定出来るでしょうか?

  • エクセルのシートの数について

    エクセルでシート数は最大でいくつまで作れるのでしょうか?

  • エクセル2007全てのシートを両面印刷するには?

    シートが30枚以上あるエクセルファイルで、全てのシートを両面印刷したいのですが、全てのシートを選んだり、「印刷対象」でブック全体にしたり、「プリンタとFAX」で使うプリンタを選んでプロパティで両面印刷を選んでも、全てのシートに「両面印刷」が反映されず、シート毎に印刷設定しているのですが、30回以上同じ操作をせずに済む方法を教えて下さい。片面印刷の方が早いのにと思いますが、職場で両面印刷が奨励されていて、シート数の多いエクセルファイルが多く、困っています。

  • エクスプローラでExcelのファイルを作成するときのシートのかず

    エクセルで、[ツール]-[オプション]の「全般」タブのところで、 「新しいブックのシート數」を1に設定しましたが、 エクスプローラの[ファイル]-[新規作成]で Microsoft Excel ワークシート を選擇すると、作成されるファイル(.xls)のシートは1枚ではなくて、3枚のままです。 エクスプローラで作成したときにも1枚にする方法をお教えください。 なお、Excelの[ファイル]-[新規作成]で作成したときには1枚になります。 OS:Windows98SE Excel2000です。

専門家に質問してみよう