- ベストアンサー
EXCEL【VBE】範囲別にその行を別sheetの表に値だけを貼り付け追加登録も出来るようにしたい。
- ExcelのVBEを使用して、特定の条件を満たす行を別のシートに値だけを貼り付けて追加登録する方法について教えてください。
- データの初期化をせずに追加登録も可能な方法があれば教えてください。
- コードの値に基づいて、特定の範囲の行をそれぞれ別のシートに値だけを貼り付けて分ける方法について教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こちらが提示したサンプルはまるで無視で、前回のURLを書いて「よろしく」っていう姿勢は如何なもんかと思うけど、、、 ようするにSheet1は毎月データを入れ替えて、Sheet2~4には追加していくって感じでしょうか? 前回の Wendy02氏 の例で言えば 'タイトル行の貼り付け For j = 2 To 4 Worksheets("Sheet" & j).Range("A1").CurrentRegion.ClearContents '←ここ .Rows(1).Copy Worksheets("Sheet" & j).Rows(1) Next j の「ここ」または4行全部を削除又はコメントアウトすれば、毎回消えなくなるけど。
その他の回答 (1)
- papayuka
- ベストアンサー率45% (1388/3066)
以前の回答がどういったものか不明ですので、どんな回答であったか、または QNo を書いて貰えると良いのですが、、、 例はオートフィルタを使ったやり方です。 差分を取るのは大変なので、全置き換えです。 データが減ることは想定してません。 「コード」に前ゼロがあるのが気になります。 ここが文字列扱いだとまともに動作しません。 Sub Test() With Worksheets("Sheet1").Range("A1") If Worksheets("Sheet1").AutoFilterMode Then .AutoFilter .AutoFilter field:=2, Criteria1:="<100" .CurrentRegion.Copy Worksheets("Sheet2").Range("A1").PasteSpecial xlPasteValues .AutoFilter field:=2, Criteria1:=">=100", Operator:=xlAnd, _ Criteria2:="<150" .CurrentRegion.Copy Worksheets("Sheet3").Range("A1").PasteSpecial xlPasteValues .AutoFilter field:=2, Criteria1:=">=150" .CurrentRegion.Copy Worksheets("Sheet4").Range("A1").PasteSpecial xlPasteValues Application.CutCopyMode = False .AutoFilter End With End Sub
お礼
無礼な補足お許しください。 すみませんでした。 そしてほんとうに papayuka様ありがとうございました 今後気をつけます。