Range1.Copy
Range2.PasteSpecial Paste:=xlPasteFormulas, SkipBlanks:=True
Range1
とが同じ次元の場合Range2
、このコードは問題なく実行されます。コピーした範囲内の数式がターゲット範囲に挿入されることが期待されますが、空白のセルにRange1
は数式がコピーされずRange2
、代わりに現在のセル値がそのまま残ります。
これが結合されたセルで失敗することを発見しました。以下の画像は、組み込みの Paste Special UI を使用した同等のアクションを示していますが、同じ方法で失敗します。
ループを伴わないエレガントな回避策を考えられる人はいますか?
不要なセルを空白 (空の) 値で上書きするため、単純にバリアントを使用するだけでRange1.Formula = Range2.Formula
は不十分であることに注意してください。Range2
他に完璧な解決策がないように思われるため、ループなしの制限を削除しました。