|
▼β さん:
うわー!!!!ありがとうございます!!!!
教えていだたいたコードでできました! 今回とても勉強になりました。
奥が深いですね。もっともっと勉強していきたいと思います!
>▼初心 さん:
>
>このメッセージが出るということは wsInvoiceシートの21行目から下に
>結合セルがあるということです。
>
>よく調べてみてください。
>
>なお、処理後、F列をクリアしているということは、次回処理する際には
>1 がたっていないわけですから、必ず 1 をつけてから操作する必要がありますね。
>
>まぁ、それはともあれ、アップされたコードでやろうとしていることを継承して
>コード記述をかえてみました。参考までに。
>(それでも、結合セルがあれば、これもエラーになります)
>
>★印のところは実際のシート名にしてください。
>
>Sub Sample()
> Dim wsData As Worksheet
> Dim wsInvoice As Worksheet
>
> Set wsData = Sheets("Sheet1") '★
> Set wsInvoice = Sheets("Sheet2") '★
>
> wsInvoice.Range("A1", wsInvoice.UsedRange).Columns("A:H").Offset(20).ClearContents
> wsData.AutoFilterMode = False '念のためいったんリセット
>
> wsData.Range("A1").CurrentRegion.AutoFilter Field:=6, Criteria1:="1"
> wsData.AutoFilter.Range.Copy wsInvoice.Range("A21")
>
> On Error Resume Next
> wsData.ShowAllData
> On Error GoTo 0
>
> wsData.AutoFilter.Range.Columns("F").Offset(1).ClearContents
>
> wsInvoice.Select
>
>End Sub
|
|