【VBA】可視セルの数式のみを値張りに変更する方法
<スポンサーリンク>
集計などを行うと、subtotalは消さずに、
「可視セル」だけ変更して、コピペしたいときがあると思います。
しかし、コピーは可視セルだけできるものの、
ペーストは、可視セルと隠れているセル関係なく、
張り付けられてしまいます。
そこで今回は、「可視セル」の数式を「値に置き換える」方法を紹介していきたいと思います。
プログラムは非常に簡単。
プログラムは非常に簡単です。
可視化セルだけを選択して、Selection.Value = Selection.Valueで値に直すだけ。になります。
おSub A()
Selection.SpecialCells (xlCellTypeVisible)
Selection.Value = Selection.Value
End Sub
プログラム説明
プログラムは非常に簡単ですが、
Selection.Value = Selection.Value
は実は、非常に使えるコードになります。
繰り返し作業などで、プログラムが遅いときには、
実は、エクセルのもとから使える数式を用いて、
一度数式としてコピーペーストして、そのあと、エクセルで計算させた後に、
値貼り付けすると格段にプログラムが早くなる時があります。
そんな時は、
Range(Cells(1, 1), Cells(100, 100)).PasteSpecial xlPasteFormulas
Selection.Value = Selection.Value
と、数式をペーストした後すぐに、
このコードを入れてあげると非常に速いプログラムを組むことができます。
ぜひこのコードは覚えていってください!!
コメント欄