
別のワークブックから 1 列の値を取得し、現在のワークブックのタブに入力したいと考えています。これは最終的に、私が作成した非常に長いモジュールに組み込まれますが、これはうまく機能します。この手順を自動化したかったのです。以下はコードです。
私は下付き文字が範囲外です貼り付け行にエラーがあります。コピー元の 2 番目のワークブックがまだ開いており、範囲が選択されてコピーされ、貼り付け先を待っているため、ステートメント設定が機能していないようcurrentWb
ですThisWorkbook
。考えられるすべての方法を検索して試しました。
Sub OpenWorkbookToPullData()
Dim sUserInput As String
sUserInput = InputBox("Enter Account Folder Name:", "Folder Name")
Dim path As String
path = "C:\users\" & Environ$("username") & "\OneDrive\Documents\Brightree\" & sUserInput & "\Financial Scorecard\Exceptions.xlsm"
Dim currentWb As Workbook
Set currentWb = ThisWorkbook
Dim exceptionWb As Workbook
Set exceptionWb = Workbooks.Open(path)
Dim exceptionWs As Worksheet
Set exceptionWs = exceptionWb.Sheets("Exceptions")
Dim rng_data As Range
Set rng_data = exceptionWs.Range("A1:A20")
rng_data.Copy
currentWb.Sheets("Exception").Range("A1").PasteSpecial xlPasteValues
exceptionWb.Close (False)
End Sub
答え1
あなたはそれを保証しなければなりませんシート("例外")存在する両方ワークブック。
そしてツイスティ指摘します。ワークシート名のスペルを確認してください。