[[20150414121559]] 『行を切り取って次のシートに挿入する』(ニワ) ページの最後に飛ぶ

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

 

『行を切り取って次のシートに挿入する』(ニワ)

 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.