プロが教える店舗&オフィスのセキュリティ対策術

赤塗り●、青塗り●、黄塗り● どれかを持つセルを別なシートにコピーするときは、range指定で1命令ですると色属性が反映されません。
仕方なく次の命令で実行していますが、検索結果の表示に使うのでシートがそのたびに変化してうるさいです。元のシートに戻らず、コピーはできないものですか?

Worksheets("TRNSLASION").select ←元のシート
Range("H" & k).select       ←色〇データあり
selection.copy
Worksheets("検索結果").select
Range("I" & j).select    ←表示したいセル
Activesheett.Paste

gooドクター

A 回答 (3件)

#1です


>range指定で1命令ですると色属性が反映されません。
確かに、でコピー、良いと思いますが、罫線やフォント書式などをコピーしたくない場合は、プロパティで参照する必要が出て来ると思います。
(このような使い方を必要とする場面もあるかも知れませんので)
コピーを使わない場合の例を挙げておきます。

With Worksheets("検索結果").Range("I" & j)
.Value = Worksheets("TRNSLASION").Range("H" & k).Value
.Interior.Color = Worksheets("TRNSLASION").Range("H" & k).Interior.Color
End With
    • good
    • 0

こんにちは



変数の内容が不明ですけれど、適切な値が入っているものとして、ご提示のコードの内容ならば

Worksheets("TRNSLASION").Range("H" & k).Copy Worksheets("検索結果").Range("I" & j)

で、同じ処理ができると思います。
(表示シートの移動等は行いません。)
    • good
    • 0
この回答へのお礼

すっきり早くできました。感激!!!
基本中の基本なのでしょうね。
他のマクロでもやっていそうなので、見直します。
ありがとうございました。

お礼日時:2021/09/02 12:30

こんにちは


>元のシートに戻らず
selectしているからですね
こんな感じで
Worksheets("TRNSLASION").Range("H" & k).Copy _
Worksheets("検索結果").Range("I" & j)
    • good
    • 0
この回答へのお礼

すっきり早くできました。感激!!!
基本中の基本なのでしょうね。
他のマクロでもやっていそうなので、見直します。
ありがとうございました。

お礼日時:2021/09/02 12:30

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

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

gooドクター

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

人気Q&Aランキング