こんにちは、画像のように左のブックから、右の別のブックに枠線と値を転記しています。
ここまでは問題なく動作しているのですが、コピー元のセルに一部背景色がついています。
ペースト先では値しか存在しないため、条件付き書式を再設定するのは合理的ではない為、コピー元で付いた背景色も同時に移植する方法はありますか?
ちなみに動作しているコードは以下のようなものです。
既に正常動作していますので、これを流用して実現できればと思います。
詳しい方、よろしくお願いいたします。
Sub CopyToNewbook()
Dim lastRow As Long
Dim wb As Workbook
Dim ws As Worksheet
Dim sourceRange As Range
Dim destRange As Range
'Get the last used row in column BP
lastRow = ActiveSheet.Cells(Rows.Count, "BP").End(xlUp).Row
'Set the source range from U3 to BP last row
Set sourceRange = Range("U3:BP" & lastRow)
'Open the Asahi Shimoitozu Mirror.xlsm file
Set wb = Workbooks.Open("C:\Users\〇〇〇\Documents\Newbook.xlsm")
'Set the destination range in the first sheet of the opened workbook to match the size of the source range
Set ws = wb.Sheets(1)
Set destRange = ws.Range("A1").Resize(sourceRange.Rows.Count, sourceRange.Columns.Count)
'Copy the values and formatting from the source range to the destination range
sourceRange.Copy
destRange.PasteSpecial xlPasteValuesAndNumberFormats
destRange.PasteSpecial xlPasteFormats
'Auto-fit the columns in the destination range
destRange.EntireColumn.AutoFit
'Activate the destination workbook and save it
wb.Activate
wb.Save
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
セルの表示されている色(=条件付き書式の結果も含めて)は
Cell.DisplayFormat.Interior.Color
で取得することが可能です。
Cell1の表示色をCell2の背景色として設定するには、
Cell2.Interior.Color = Cell1.DisplayFormat.Interior.Color
とすることで可能です。
ただし、値とは異なり、セル範囲でまとめて取得するようなことはできませんので、範囲内の個々のセルをループして転記することが必要になります。
※ 余談ながら、DisplayFormat はユーザー定義関数では利用できませんのでご注意ください。
https://learn.microsoft.com/ja-jp/office/vba/api …
No.2
- 回答日時:
コピー元の背景色をコピー先に移植するには、コピー先に背景色を設定する必要があります。
以下は、コピー元の背景色を取得し、コピー先に設定する方法です。既存のコードに追加することができます。'Set the source range from U3 to BP last row Set sourceRange = Range("U3:BP" & lastRow)
'Copy the values, formatting, and background color from the source range to the destination range sourceRange.Copy destRange.PasteSpecial xlPasteValuesAndNumberFormats destRange.PasteSpecial xlPasteFormats For Each cell In sourceRange destRange.Cells(cell.Row - 2, cell.Column - 20).Interior.Color = cell.Interior.Color Next cell
'Auto-fit the columns in the destination range destRange.EntireColumn.AutoFit
'Activate the destination workbook and save it wb.Activate wb.Save
このコードは、コピー元のセルの背景色を取得し、その色をコピー先の対応するセルに設定します。また、既存のコードと同様に、値と書式もコピーするために、xlPasteValuesAndNumberFormatsとxlPasteFormatsを使用しています。
回答ありがとうございます。
ChatGPTで調べたコードを正しいかどうかもわからないのに回答するのはやめて下さい。
そういうのやらないほうが良いですよ、信用無くすんで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
これまでで一番「情けなかったとき」はいつですか?
これまでの人生で一番「情けない」と感じていたときはいつですか? そこからどう変化していきましたか?
-
【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
【お題】・忍者がやってるYouTubeが炎上してしまった理由
-
自分独自の健康法はある?
こうしていると調子がいい!みたいな自分独自の健康法、こだわりはありますか?
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
【選手権お題その2】この漫画の2コマ目を考えてください
サッカーのワンシーンを切り取った1コマ目。果たして2コマ目にはどんな展開になるのか教えてください。
-
エクセルでマクロにてセル色と文字を他シートのセルへコピーしたい
その他(コンピューター・テクノロジー)
-
VBAで転記すると元のシートの条件付き書式が消えてしまいます。
Excel(エクセル)
-
VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカウントできる、VB
Visual Basic(VBA)
-
-
4
条件付書式設定でつけた色を残したまま条件式を解除する方法は?
Excel(エクセル)
-
5
エクセル:セルのバックの色だけをコピペしたい
Excel(エクセル)
-
6
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
2つの数値のうち、数値が小さい...
-
EXCELで条件付き書式で空白セル...
-
VLOOKUP関数を使用時、検索する...
-
リンク先のファイルを開かなく...
-
小数点以下を繰り上げたものを...
-
ワードのページ番号をもっと下...
-
EXCELで式からグラフを描くには?
-
値が入っているときだけ計算結...
-
エクセルで数式の答えを数値と...
-
エクセルのラベルの値(文字列...
-
MIN関数で空白セルを無視したい...
-
エクセル指定した範囲からラン...
-
【エクセル】0以外が入力され...
-
EXCELの条件付き書式で数式を空...
-
白血球が多いとどんな心配があ...
-
彼女のことが好きすぎて彼女の...
-
爪が紫色?
-
WORDで複数語句を検索するには
-
精子に血が・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで100マスの乱数表...
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
EXCELで条件付き書式で空白セル...
-
EXCELで式からグラフを描くには?
-
リンク先のファイルを開かなく...
-
エクセル指定した範囲からラン...
-
2つの数値のうち、数値が小さい...
-
エクセルで数式の答えを数値と...
-
白血球が多いとどんな心配があ...
-
風俗店へ行く前のご飯
-
小数点以下を繰り上げたものを...
-
勃起する時って痛いんですか? ...
-
エクセルのラベルの値(文字列...
-
VLOOKUP関数を使用時、検索する...
-
ワードのページ番号をもっと下...
-
ある範囲のセルから任意の値を...
-
これって喉仏ですか? 私は女性...
-
MIN関数で空白セルを無視したい...
-
イタリアから帰国する際、肉製...
おすすめ情報
失礼しました、元の背景色は条件付き書式にて設定された背景色です。