[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBA フィルターした後の可視セルのみ抽出&転記』(Thomas)
主題の件、下記の様なデータの0以外をフィルターし、フィルター後の可視セルのみを抽出&転記したいです。Copyメソッドでは可能なのですが、変数を使ったやり方をしたく、以下の様なコードを書いたのですがうまくいかず、恐れ入りますが、どのようにしたらよろしいかご教示頂けます様お願い致します。
(元データ)
A1 : みそ
A2 : 0
A3 : しょうゆ
A4 : 0
A5 : しお
(やりたい事)
A6 : みそ
A7 : しょうゆ
A8 : しお
<下記copy pasteメソッドではできました>
Sub sample()
Range(Cells(1, 1), Cells(5, 1)).AutoFilter 1, "<>0"
Range(Cells(1, 1), Cells(5, 1)).CurrentRegion.Copy
Range(Cells(6, 1), Cells(10, 1)).PasteSpecial
Paste = xlPasteAll
End Sub
<下記変数へ格納ではできませんでした>
Sub sample()
Dim m
Range(Cells(1, 1), Cells(5, 1)).AutoFilter 1, "<>0"
m = Range(Cells(1, 1), Cells(5, 1)).SpecialCells(xlCellTypeVisible)
Range(Cells(6, 1), Cells(10, 1)) = m
End Sub
このコードについてご教示お願い致します。
< 使用 Excel:Excel2013、使用 OS:unknown >
>変数を使ったやり方をしたく
??
直接のままでいいじゃん
(たぶん) 2024/04/05(金) 13:19:40
>m = Range(Cells(1, 1), Cells(5, 1)).SpecialCells(xlCellTypeVisible) とすると、対象範囲が複数のAreaに分かれた(飛び地のような)場合、 最初のAreaだけが取り込まれる仕様です。
前者を使うのが良いと思います。(Paste = xlPasteAllというのが変ですが。それは無くてもよいです。) (xyz) 2024/04/05(金) 13:26:54
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.