Excel VBA質問箱 IV

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

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


5753 / 76732 ←次へ | 前へ→

【76586】Re:コンパクト化
発言  kanabun  - 15/1/22(木) 17:56 -

引用なし
パスワード
   ▼こずえ さん:

>コンパクトにできますか?

コンパクトというか、現状のコードだと 「エネ」シートのどのセルが変化しても
Changeイベント・プロシージャ内の処理が走りますね?
それは無駄なことなので、C列の入力(あるいはクリア)でなければ、
チェックはしないことにしましょう。

Private Sub Worksheet_Change(ByVal Target As Range)
 Dim c As Range
 Dim r As Range
 Dim ss As String, zz As String
 Dim i As Long
  If Target.Column <> 3 Then Exit Sub 'C列の Change でなければ抜ける
  
  zz = "C64:C65,C115:C116,C166:C167,C115:C116,"
  zz = zz & "C219:C220,C248:C250,C277:C278,C306:C307"
  ss = "CEGIDFHJ"
  For Each r In Range(zz).Areas
    i = i + 1
    If Not (Intersect(Target, r) Is Nothing) Then
      Set c = Worksheets("メニュー").Range(Mid$(ss, i, 1) & "10")
      If WorksheetFunction.CountBlank(r) = 2 Then
        c.ClearContents
      Else
        c.Value = "印 刷"
      End If
      Exit For
    End If
  Next
End Sub
0 hits

【76585】コンパクト化 こずえ 15/1/22(木) 15:01 質問[未読]
【76586】Re:コンパクト化 kanabun 15/1/22(木) 17:56 発言[未読]
【76588】Re:コンパクト化 β 15/1/22(木) 20:49 発言[未読]
【76589】Re:コンパクト化 kanabun 15/1/22(木) 20:54 発言[未読]
【76590】Re:コンパクト化 kanabun 15/1/22(木) 23:11 発言[未読]
【76587】Re:コンパクト化 β 15/1/22(木) 20:19 発言[未読]
【76591】Re:コンパクト化 こずえ 15/1/23(金) 10:53 質問[未読]
【76592】Re:コンパクト化 β 15/1/23(金) 14:15 発言[未読]
【76593】Re:コンパクト化 こずえ 15/1/24(土) 1:01 質問[未読]
【76594】Re:コンパクト化 β 15/1/24(土) 10:47 発言[未読]
【76595】Re:コンパクト化 こずえ 15/1/24(土) 23:28 お礼[未読]

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