はじめまして。VBA勉強中の者です。
色々調べてみたのですが、うまくいかず・・・ご教授頂けないでしょうか。
前提・実現したいこと
この表のAの列が「3.変更」かつ、B~Eに黄色セルが含まれている場合、
対象のB~E行を別シートに上から詰めてコピペしたいのですが、うまくいきません。
↓途中まで考えたものです。(セル等は上記例とは異なります/※7行目から表が始まっています。)
Sub 対象を別シートにコピー() Dim i Dim Sht1 As Worksheet Dim Sht2 As Worksheet Set Sht1 = Sheets("貼付用") Set Sht2 = Sheets("2.変更、3.廃止") For i = 7 To Cells(Rows.Count, 1).End(xlUp).Row If Sht1.Cells(i, 1) = "3.変更" And Sht1.Range(Cells(i, 4), Cells(i, 7)).Interior.ColorIndex = xlNone Then '色潰し無しの場合は何もせず Else Range(Sht1.Cells(i, 4), Sht1.Cells(i, 7)).Copy Destination:=Range(Sht2.Cells(i, 1), Sht2.Cells(i, 4)) 'コピペ End If Next End Sub
参考にしたページ
以上、よろしくお願いいたします。
どのようなコードを書かれていますか?
現時点のもので結構ですので、コードを提示されたほうが、よろしいかと思います。
また、「うまく行かない」ということですが、エラーメッセージがでるのか、どこがうまくいっていないのか、具体的にされたほうが、回答が付きやすいと思います。
色が付いたとありますが、それは条件付き書式設定で色が付いたということでしょうか?それともセルの書式設定で色を付けたということでしょうか?
mattuwan様
コメントありがとうございます。
条件付き書式設定で色が付いているようです。
(わかりづらくすみません。
表自体は別担当者が作成しており、その後ファイルをもらい、私が編集して該当のものを抽出しようとしています)
よろしくお願いいたします。
hex309様
コメントありがとうございます。
そうですね、本当のファイルは業務上開示できない為、似たような表を作成しました。
合わせてコードも掲示します。失礼しました。
現時点でのコードを提示してください。
また、具体的に調べたことを提示してください。
参考にしたページのURLとか。
回答1件
あなたの回答
tips
プレビュー