• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル フィルタをかけたセルに貼り付け)

エクセルでフィルタをかけたセルに値を貼り付ける方法とは?

このQ&Aのポイント
  • エクセルのシートでフィルタをかけたセルの選択範囲をコピーし、同じ範囲に値を貼り付けたい場合の方法について教えてください。
  • フィルタで表示するセルにはVLOOKUPを含む数式が入っており、元データが変更されると数式の結果も変わってしまいます。VLOOKUPで引っ張ってきた後に値を確定させるために、コピーと貼り付けを行いたいです。
  • フィルタをかけたセルのコピーと貼り付けはマクロを使用する必要があると認識していますが、マクロの組み方がわからず困っています。助けていただけませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

>実際にマクロを組むことができず困っています。 そのような時は、フリーウェアを探してみるのも解決策のひとつです。 『不連続セルの貼付』 http://www.vector.co.jp/soft/win95/business/se448351.html もっとも、本ケースは[コピー]-[貼り付け]というより『可視セルの数式を値にする』だけなので 目的を絞れば比較的簡易なコードで対応出来そうです。 Sub Test() 'フィルター後、値化したい範囲をまとめて選択して実行   Dim rng As Range   Dim r  As Range   If TypeName(Selection) <> "Range" Then Exit Sub   On Error Resume Next   Set rng = Selection.SpecialCells(xlCellTypeVisible)   On Error GoTo 0   If rng Is Nothing Then Exit Sub   For Each r In rng     r.Value = r.Value   Next   Set rng = Nothing End Sub

m_azarashi
質問者

お礼

フリーウェアの有用な情報を教えていただきありがとうございました。 このようなものもあるのですね。 早速試したところ、動作も早いしうまい具合に使えるかと思ったのですが、 いざ実データで使用しようとすると、途中までしか貼り付けができませんでした。 (2000行以上もある大きいデータだからか、データに問題があるのかもしれません・・・) ですが作っていただいたコードで試したところ、多少の待ち時間はあるものの、エラーもなく値貼付けを行うことができました。 数式を値貼り付けする機会がたびたびあるもので、コードを作っていただき大変助かりました。 もうしばらく実データで使用してみて、確認したいと思います。

関連するQ&A