私が取り組んでいるExcelマクロでは、フィルタリングされたデータを新しいシートにコピーして、非表示の行を削除します。これにより、ユーザーがフィルター処理したデータに対してより複雑な数式を実行できます。複雑にフィルター処理された大規模なデータ セットでは、コピー操作はフィルター処理されたデータだけではなく、すべてのデータをコピーしました。
手順を手動で複製すると、フィルター処理されたデータをコピーしようとすると、Excel で「データ範囲が複雑すぎます」というエラーが表示されました。これは、ソートしてからフィルタリングすることで簡単に回避できますが、VBA でこのエラーをキャッチする方法がわかりません。コピー操作が適切に機能しているかどうか (マクロを続行できるようにするか)、または選択が複雑すぎるかどうか (マクロを停止して、最初に並べ替えを試みるようにユーザーに警告する) を知る方法が必要です。
どうすればこれを行うことができますか?どんな助けでも大歓迎です。
以下の関連コード:
Select Case Range("GDT_Filtered").Value
Case "Filtered Data"
Worksheets.Add after:=Worksheets(Worksheets.Count)
Set wRaw = ActiveSheet
Sheets("Raw Data").Select
lastRow = Range("A1").End(xlDown).Row
Range("A1:S" & lastRow).Copy Destination:=wRaw.Range("A1")
Case "All Data"
Set wRaw = Sheets("Raw Data")
On Error Resume Next
wRaw.ShowAllData
On Error GoTo 0
End Select
ありがとう!
サム