[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『行を切り取って次のシートに挿入する』(ニワ)
A列のセルにデータが入っています。 そのうち、一部のセルは黄色になっています。
この黄色のセルを含む行を切り取って、シート2の5行目に挿入する
黄色のセルは、毎日更新されまして、たとえば1日目に、黄色になった3行をシート2に挿入したとします。 それで、2日目にまた黄色のセルができたら、その行を切り取って、前日挿入したシート2の3行の次に挿入するようにしたいのですが。 VBAで、お教え願います。
< 使用 Excel:Excel2013、使用 OS:Windows8 >
直接セルを黄色に塗りつぶしたのもですか?それとも条件付き書式で色づけしたものですか?前者なら
Sub Macro1()
Dim i As Long, r As Long
With Sheets("Sheet1") For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row If .Cells(i, 1).Interior.ColorIndex = 6 Then .Cells(i, 1).Cut If Sheets("Sheet2").Range("A5") = "" Then r = 5 Else r = Sheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row + 1 End If Sheets("Sheet2").Cells(r, 1).Insert End If Next End With
End Sub (se_9) 2015/04/14(火) 13:10
ありがとうございます。
上記のマクロを試してみましたが、対象の黄色のセルだけ切り取られて、シート2に挿入されます。 それを、対象の黄色のセルがある行ごと切り取って、シート2に挿入するようにしていただきたいのですが。
あと、すみませんが、もう1つ。 切り取る前に、対象の黄色のセルがある行の、E列のセルに、今日の日付が入力されるようにしたいのです。
よって、まとめますと、A列の任意のセルが黄色なら、その行のE列のセルに今日の日付を入力し、 そのあと、その行を切り取って、シート2に挿入したいのです。
よろしくお願いします。 (ニワ) 2015/04/14(火) 22:26
Sheets("Sheet1").Cells(i,1)は、Sheet1の1列目(A列)のi行目のセル Sheets("Sheet1").Cells(i,5)だと、Sheet1の5列目(E列)のi行目のセル Sheets("Sheet1").Rows(i)とすれば、i行全体となります
Sheets("Sheet1").Cells(i,5).Value=Dateとすると、Cells(i,5)が今日の日付となります
(マナ) 2015/04/14(火) 23:02
ちゃんと読んでなくてすいませんでした。 マナさん修正ありがとうございます。 (se_9) 2015/04/15(水) 10:28
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.