- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル フィルタをかけたセルに貼り付け)
エクセルでフィルタをかけたセルに値を貼り付ける方法とは?
このQ&Aのポイント
- エクセルのシートでフィルタをかけたセルの選択範囲をコピーし、同じ範囲に値を貼り付けたい場合の方法について教えてください。
- フィルタで表示するセルにはVLOOKUPを含む数式が入っており、元データが変更されると数式の結果も変わってしまいます。VLOOKUPで引っ張ってきた後に値を確定させるために、コピーと貼り付けを行いたいです。
- フィルタをかけたセルのコピーと貼り付けはマクロを使用する必要があると認識していますが、マクロの組み方がわからず困っています。助けていただけませんか?
- みんなの回答 (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
お礼
フリーウェアの有用な情報を教えていただきありがとうございました。 このようなものもあるのですね。 早速試したところ、動作も早いしうまい具合に使えるかと思ったのですが、 いざ実データで使用しようとすると、途中までしか貼り付けができませんでした。 (2000行以上もある大きいデータだからか、データに問題があるのかもしれません・・・) ですが作っていただいたコードで試したところ、多少の待ち時間はあるものの、エラーもなく値貼付けを行うことができました。 数式を値貼り付けする機会がたびたびあるもので、コードを作っていただき大変助かりました。 もうしばらく実データで使用してみて、確認したいと思います。