ブック内の各シートで同じ機能(別のExcelブックのテーブルからVLookupを外して)を実行しようとしています。私はVBAスクリプトを構築しているが、ループは機能していない。 VLookupは、私が行っているシート上で動作しますが、残りのサイクルは繰り返されません。VBAループのExcelブック内のすべてのシートのVlookupが機能していません
スクリプト:
Sub loop_through_all_worksheets()
Dim ws As Worksheet
Dim starting_ws As Worksheet
Set starting_ws = ActiveSheet
For Each ws In ThisWorkbook.Worksheets
Range("AE2").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1], [Vendor.xlsx]AP210!C1:C2,2,FALSE)"
Range("AE2").Select
Selection.AutoFill Destination:=Range("AE2:AE49")
Range("AE2:AE49").Select
Columns("AE:AE").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
starting_ws.Activate
Next
End Sub
注: 'Vendor.xlsxは' 第二のファイルであるルックアップテーブルです。
私はこれを私の独自のVLookupスクリプトを作成してループスクリプトに追加しました。
タブと、各タブの名前の数がvaiableある
ループが機能しない理由上の任意の入力?私は完全にこれを根拠にしていませんか?
は助けを
あなたは 'ThisWorkbook'のすべてのワークシートをループしていますが、外部ワークブックには1つの 'VLOOKUP'を実行していますか?毎回同じ「VLOOKUP」のように見えます。そうであれば、ループの外側に移動することができます。また、あなたは[SelectとActivateを使う必要はありません](https://stackoverflow.com/documentation/excel-vba/1107/vba-best-practices/9292/avoid-using-selectoror -activate#t = 201705232001577159123) – PeterT