• ベストアンサー

VBAで全シートの処理

EXCEL2003を使用しています。 処理内容はあるEXCELファイルをオープンして、シートに存在する値を使って処理するというものです。 質問はそのオープンしたファイルに存在する個々のシート全てを処理させる方法を教えていただけますでしょうか? 1つのシートの処理が終わったら次のシートへと移るロジックがわかりません。しかも存在するシート分です。 よろしくお願いいたします。

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

  • ベストアンサー
回答No.2

こんなのでもいけます。 Dim Mysheet As Sheets Set Mysheet = ActiveWorkbook.Sheets For i = 1 to MySheet.count Sheets(i).Activate 処理 Next i

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

Sub test01() Dim sh As Worksheet Workbooks.Open "c:\My Documents\aa2.xls " For Each sh In ActiveWorkbook.Sheets MsgBox sh.Cells(1, "A") Next End Sub を参考に。

  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.1

こんな感じ Dim WS As Worksheet For Each WS In Application.ActiveWorkbook.Worksheets MsgBox (WS.Name) Next

fm0606
質問者

補足

早々のレスありがとうございます。 すみません、これってファイルをオープンした後のロジックですよね?

関連するQ&A