- ベストアンサー
二つのマクロで一気に処理する方法とは?
- 質問文章では、Excelのマクロを使用して二つの処理を一気に行う方法について質問しています。具体的には、以下の処理を行いたいとのことです。1. sheet1からsheet2へのデータのコピー&貼り付け。ただし、A列からO列までの全てのセルにデータが入っている行のみをコピーする条件があります。2. データの重複削除を行うマクロと、コピー&貼り付けのマクロを合体させて一つの処理として実行したいということです。
- タイトルには、Excelのマクロを使用して二つの処理を一気に行う方法に焦点を当てています。タイトルは、SEOを意識して30文字前後で作成しています。
- ハッシュタグとしては、#Excelマクロ #データ処理 #マクロ操作 #コピー貼り付け #データ重複削除 を提案します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
下記の点疑問に思った。 補足要求ほか、参考までに。 ・O列のセルのデータだけで、重複しているかどうかの判断をしてよいのか。 ・>通し番号で奇数の数字が入って 奇数というのが意味があるのか?ないなら余分なことを描かない方がよい。 ・質問者のコードで2つのモジュールを連ねて、うまく行かないのか。 *張り付ける直前に、重複を判断し重複しておれば、張り付けない、で済むのでは? なんか、聞くまでもないところに、質問者は到達しているようだが、何を不安がっているのか?実際試してみて、エラーが出てから聞くようにしたら。 ・>A列からO列のすべてにデータがあった場合のみコピー貼り付けさせたい は、下記ロジックで簡単に判別できそう。 Sub test02() For i=2 to 最終行番号 N = Application.WorksheetFunction.CountA(Range("A" & i & ":O" & i)) MsgBox N 'IF N < 15 then ’(貼り付けない。15の時のみこの行を貼り付ける。) Next i End Sub 数字、文字、数式・関数、半角・全角ブランク、エラー値は勘定に入れてしまうが。 重複は質問者がやっているように、O列で、張り付けるデータがCountIfして 1なら、すでに存在するのだから、貼り付け処理をスキップ。
その他の回答 (1)
- kkkkkm
- ベストアンサー率66% (1733/2603)
Sub コピー貼り付けつけ() の最後 Application.CutCopyMode = False の後に 重複データを一括削除する と記載すれば「重複データを一括削除する」マクロがそこから実行されます。 重複データを一括削除するマクロにはシートの指定がないのでそのあたりは適宜行ってください。
お礼
有難うございました。また、質問の時はご協力頂ければ幸いです。お世話になりました。
お礼
有難うございました。できました。重複については、もう少し考えてみます。 お世話になりました。