Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12276 / 13644 ツリー ←次へ | 前へ→

【11337】WITHステートメント liee_chang 04/3/5(金) 17:39 質問
【11338】Re:WITHステートメント IROC 04/3/5(金) 18:31 回答
【11373】Re:WITHステートメント りん 04/3/7(日) 13:15 回答
【11385】Re:WITHステートメント liee_chang 04/3/8(月) 11:45 お礼

【11337】WITHステートメント
質問  liee_chang  - 04/3/5(金) 17:39 -

引用なし
パスワード
   基本的なことかもしれないんですが、本をみても解決しません。
withステートメント内でエラーが出てしまいます。
わかるかたいらっしゃいましたら、教えてください・・。

シートのセルが空欄だったらある範囲の色と保護をはずす。これをトナリのシートにも繰り返すというロジックにしたいのです。

r = 1
  Do While Worksheets(r + 1).Cells(18, 4).Value = ""
    Range("D18:O19,D25:O28").Select
      
      With Selection.Interior
        .ColorIndex = 8
      End With
      
    Selection.Locked = False
    Selection.FormulaHidden = False
      
    r = r + 1
  Loop

【11338】Re:WITHステートメント
回答  IROC  - 04/3/5(金) 18:31 -

引用なし
パスワード
   処理はなるべく分けて考えると良いです

dim i as long

for i = 1 to worksheets.count 'シートのループ

 with worksheets(i)

   if .Cells(18, 4).Value = "" then
     with .Range("D18:O19,D25:O28")
       .Interior.ColorIndex = 8      
       .Locked = False
       .FormulaHidden = False
     end with
   end if

 end with

next i

【11373】Re:WITHステートメント
回答  りん E-MAIL  - 04/3/7(日) 13:15 -

引用なし
パスワード
   liee_chang さん、こんにちわ。

>シートのセルが空欄だったらある範囲の色と保護をはずす。これをトナリのシートにも繰り返すというロジックにしたいのです。
         ↓ここでは指定していても、
>  Do While Worksheets(r + 1).Cells(18, 4).Value = ""
   ↓ここでシートを指定していないので常に表示中のシートが対象で範囲選択
>    Range("D18:O19,D25:O28").Select
>      

Sub Test()
  Dim ws As Worksheet
  For Each ws In ActiveWorkbook.Worksheets
   With ws 'WorksheetオブジェクトでWith
     If .Cells(18, 4).Value = "" Then
      With .Range("D18:O19,D25:O28") 'RangeオブジェクトでWith
        .Interior.ColorIndex = 8
        .Locked = False
        .FormulaHidden = False
      End With
     End If
   End With
  Next
End Sub

こんな感じです。

【11385】Re:WITHステートメント
お礼  liee_chang  - 04/3/8(月) 11:45 -

引用なし
パスワード
   見事にできました!感動
みなさま、ありがとうございます。

liee

12276 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free