1

私は VBA マクロで作業しています。高度なフィルター メソッドを使用して、一意のレコードを他のセルにコピーしようとしています。コードと行が少ない1つのモジュールで正常に動作しています。

しかし、同じ高度なフィルター処理されたメソッドが別のシートでは機能していません。データはコピーされず、Excel シートの左隅に抜粋が表示されているだけです。

基本的に、高度なフィルター処理されたメソッドを使用して、一意のレコードをある列から別の列にコピーしています

高度なフィルタ オプションのエラーを修正するのを手伝っていただけませんか。

Set rng = ws.Range("A1:A" & lastrow)

Set rng1 = ws.Range("B1")



rng.AdvancedFilter Action:=xlFilterCopy, copytorange:=rng1, unique:=True



End Sub
4

1 に答える 1

0

あなたsubroutineはうまくいくようです。sub's LastRowマクロを記録して、実際のマクロと実際のマクロの違いを確認してください。column A data Range rowcount

Option Explicit

Sub advFilterCopy()
Dim ws As Worksheet
Dim rng As Range
Dim rng1 As Range
Dim LastRow As Long

   Set ws = Sheets(2)
   ws.Unprotect
   '--use this if you have a password
   '--ws.Unprotect Password:="urpassword"
   LastRow = ws.Range("A" & ws.Rows.Count).End(xlUp).Row
   Set rng = ws.Range("A1:A" & LastRow)
   Set rng1 = ws.Range("B1")

   rng.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=rng1, Unique:=True
   ws.Protect    '--user password if reqiured
End Sub

出力:

ここに画像の説明を入力

于 2013-01-05T11:40:03.073 に答える