Excel VBA質問箱 IV

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

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


22118 / 76734 ←次へ | 前へ→

【60001】Re:行のカットと挿入について
発言  にぃ  - 09/1/23(金) 9:19 -

引用なし
パスワード
   ▼タケタケ さん:
こんにちは!


>なお、もしあるシートだけが異なるコードが有る場合は、
>どうすれば良いのでしょうか?
>対象シートにコード作成すれば良いのでしょうか?
そうですね。
ただし、If分岐などでブックイベントにそのシートだけ
ブックイベントを起こさないよう記述してください。
もしくはブックイベントにIf分岐などで、そのシートだけの
処理を記述してもいいと思います。


>次に、C入力してオレンジに変えたセルを、
>Cを削除したらセルの色だけ元の戻したいと考えています。
このようにすれば可能だと思います。

Private Sub Worksheet_Change(ByVal Target As Range)

  With Target
    If .Row < 4 Then Exit Sub
    If .Column <> 10 Then Exit Sub
    If .Count > 1 Then Exit Sub
 
    Application.EnableEvents = False

    If .Value = "c" Then
      .Interior.ColorIndex = 44

      If .Offset(-1).Value = "" Then
        .EntireRow.Cut
        .End(xlUp).Offset(1).Activate
        Rows(ActiveCell.Row).Insert Shift:=xlDown
      End If
      
    ElseIf .Value = Empty Then '追加
      .Interior.ColorIndex = xlNone '追加
    End If

    Application.EnableEvents = True

  End With

End Sub

>↓このコードの使い方がおかしいのでしょうか?
>    If .Value = .ClearContents Then 
>      .Interior.ColorIndex = 1
>     End If
.ClearContentsはセルを空白にする「動作」です。
ですので分岐条件では使用することが出来ません。
ここに入れるのでしたら「""」や「Empty」になります。
また、If .Value = "c" Thenの分岐の中に入れては動作してくれなくなります。


ちなみに、コードはなるべく同じ縦ラインに書かず、空白を入れてください。
そのほうが他の人が見るときにとても見やすくなります。
5 hits

【59961】行のカットと挿入について タケタケ 09/1/21(水) 9:59 質問
【59962】Re:行のカットと挿入について ひげくま 09/1/21(水) 12:19 発言
【59963】Re:行のカットと挿入について にぃ 09/1/21(水) 13:53 発言
【59971】Re:行のカットと挿入について タケタケ 09/1/21(水) 20:29 発言
【59976】Re:行のカットと挿入について にぃ 09/1/22(木) 9:47 発言
【59982】Re:行のカットと挿入について タケタケ 09/1/22(木) 12:46 お礼
【59984】Re:行のカットと挿入について にぃ 09/1/22(木) 13:29 発言
【59986】Re:行のカットと挿入について タケタケ 09/1/22(木) 17:53 質問
【59987】Re:行のカットと挿入について ダースベーロー 09/1/22(木) 18:03 発言
【60001】Re:行のカットと挿入について にぃ 09/1/23(金) 9:19 発言
【60002】Re:行のカットと挿入について タケタケ 09/1/23(金) 10:30 お礼
【60003】Re:行のカットと挿入について にぃ 09/1/23(金) 10:38 発言

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