• ベストアンサー

VBAでdim sh as worksheet

にifで出た結果を抽出?したいのですがどうすればいいですか? Dim ssh As Worksheet Set ssh = ThisWorkbook.Worksheets If ~          Thenの後にどうやればsshの中に入りますか?

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

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

WorksheetsとかWorkbooksのように 複数形のものはコレクションという もので、インデックスか名前を指定 して一つのWorkSheetやWorkbookを 取り出すものです。 故に、WorkSheet型であるsshに対し、 ThisWorkbook.WorkSheetsは設定 できません。 例えば、1番目のシートに内容を表示 したいのであれば以下のようにします。 Dim シート集合 As WorkSheets Dim シート単体 As WorkSheet Set シート集合 = ThisWorkbook.WorkSheets Set シート単体 = シート集合(1) If 条件 Then   シート単体.Cells(1, 2) = "○" Else   シート単体.Cells(1, 2) = "×" End If 日本語では単数形、複数形を区別しない ことが多いのですが、英語は動詞の活用が 変わるなど、厳格に区別します。 コンピュータの世界でも同じです。

その他の回答 (1)

回答No.1

ThisWorkbookの各sheetsに順次アクセスし、シート名を調べるとして Dim ssh As Worksheet Dim AA,AAA Set ssh = ThisWorkbook.Worksheets (1)For Each AAA In ssh AA=AAA.Name (2)Next 'If ~は (1)と(2)の間に記述