[[20230312152632]] 『クリアしたい』(k) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『クリアしたい』(k)

 C1から C列の表が始まる一つ上の行(空白行)のD列以降の行をクリアにする事は可能ですか。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


>>C1から C列の表が始まる一つ上の行(空白行)
C1の一つ上が、C1の一つ上の行という意味なら存在しないと
思いますが。何かのお間違いで?
さらに、詳細のご説明を賜れば、たくさんアドバイスが
有るかもしれません。。。←。。。多分。^^;
m(__)m
(隠居Z) 2023/03/12(日) 16:49:03

よろしくお願いします。

C列C1から空白行まで、右隣以降の列をクリアにしたく、
下の表ですとD1からF3までをクリアです。
可変するのでC列を基準にしたいと思います。

           A    B    C    D    E    F
 1                       あ  あ  あ
   2                           き
   3
   4                  あ  あ  か さ
   5                  う  1    2   3
   6                  さ  1    2   3

(k) 2023/03/12(日) 18:24:54


 こんな感じでしょうか。。。^^
範囲は実データに合わせ、適宜、ご変更を。m(__)m
Option Explicit
Sub OneInstanceMain()
    Dim i As Long
    Dim r As Range
    With Worksheets("Sheet1")
        Set r = Intersect(.Range(.Columns(3), .Columns(.Columns.Count)), .UsedRange)
    End With
    For i = 1 To r.Rows.Count
        If r(i, 1) = "" Then
            r(i, 1).Resize(, r.Columns.Count).Clear
        End If
    Next
End Sub
(隠居Z) 2023/03/12(日) 19:35:17

 >右隣以降の列をクリアに
アクティブセル範囲と解釈してます。

 Sub test()
     Dim r As Long, c As Long
     r = Range("C1").End(xlDown).Offset(-1, 0).Row
     c = Range("C1").CurrentRegion.Columns.Count
     Range("C1").Resize(r, c).Clear
 End Sub
(フォーキー) 2023/03/13(月) 13:30:10

修正。アクティブセル範囲を対象にしているのは変わらないので、間違っていたらすみません。
 Sub test2()
     With Range("C1")
         .CurrentRegion.Resize(.End(xlDown).Offset(-1, 0).Row).Clear
     End With
 End Sub
(フォーキー) 2023/03/13(月) 13:53:54

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.