アプリ版:「スタンプのみでお礼する」機能のリリースについて

wS1シートに下記の条件付き書式が設定されています。
=CELL("row")=ROW()
'適用先  =$B:$K
別のシートから下記のVBAで転記を実行するとコピーされた範囲の条件付き書式が消えてしまいます。
条件付き書式が消えないようなコピーの方法を教えてください。
この転記作業は年1回だけなので、現在は転記終了後に条件付き書式を再設定しています。ただ同じようなブックが何本かあるので、できれば条件付き書式を壊さずにコピーできる方法を探しています。

Sub 転記()
Dim i As Long, n As Long, c As Range, wS1 As Worksheet, wS2 As Worksheet
Set wS1 = ("A")
Set wS2 = ("B")

For i = 2 To wS1.Cells(Rows.Count, 4).End(xlUp).Row
Set c = wS2.Columns(2).Find(what:=wS1.Cells(i, 4), LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
n = c.Row
wS2.Cells(n, 3).Resize(1, 8).Copy wS1.Cells(i, 5)
End If
Next i
End Sub

A 回答 (3件)

このようにしたらどうでしょうか。



wS2.Cells(n, 3).Resize(1, 8).Copy wS1.Cells(i, 5)
    ↓ 
wS1.Cells(i, 5).Resize(1,8).Value = wS2.Cells(n, 3).Resize(1, 8).Value
    • good
    • 2
この回答へのお礼

WindFaller 様
いつも適切な回答ありがとうございます。
見事に条件付き書式を残してコピーできました。

お礼日時:2017/03/16 17:08

そうそう、No.2様の通りにすれば良いですよ。


Range().Valueで代入しても良し、代入なら何でも良いです。
    • good
    • 0

.COPYで行なうと、レイアの全てがコピーされるので、条件付書式レイアもコピーされます。



普通に=で代入すれば、値レイアだけがコピーされます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A