2017-11-08 9 views
0

VBAは非常に新しいです。 8つのダイナミックな「個別」ワークブックのマクロを使用してデータを自動的にコピーしようとしていますが、個々のブックがさまざまなチームメンバーによって継続的に更新されるため、Excelコピー/貼り付け後にデータソースワークブックを開くデータマクロを実行しました

私は以下のマクロはうまく動作しますが、後でExcelのワークブックを開いておくと、8つの個別ファイルでは機能しません。

マイクロコードの実行後にデータソースファイルを自動的に閉じるためにどのようなコードを追加できますか? End Subが機能しなくなり、エラー9を発行する前に、コードの最後に「閉じる」をクリックします。

( "C:¥Users¥MIRAR¥Desktop¥AD HOC¥DEMO FILE - WIP¥SHARNY.xlsx"

コード以下は1つのタブ上の8つのブックのうちの1つから過去のデータをコピーすることです。

非常に高く評価されました!

Sub CopyingRange() 
Workbooks.Open "C:\Users\MIRAR\Desktop\AD HOC\DEMO FILE - WIP\SHARNY.xlsx" 

Dim CopyFromBook As Workbook 
Dim CopyToWbk As Workbook 
Dim ShToCopy As Worksheet 

Set CopyFromBook = Workbooks("SHARNY.xlsx") 
Set ShToCopy = CopyFromBook.Worksheets("Sheet1") 
Set CopyToWbk = Workbooks("Consolidated Tracker File.xlsx") 

Workbooks("C:\Users\MIRAR\Desktop\AD HOC\DEMO FILE - WIP\SHARNY.xlsx").Close 

End Sub 

答えて

2

短い答えは次のとおりです。

Workbooks("SHARNY.xlsx").Close

より良い答えが直接ワークブックを指す変数で動作するようです:

Sub CopyingRange() 
    Dim CopyFromBook As Workbook 
    Dim CopyToWbk As Workbook 
    Dim ShToCopy As Worksheet 

    Set CopyFromBook = Workbooks.Open("C:\Users\MIRAR\Desktop\AD HOC\DEMO FILE - WIP\SHARNY.xlsx") 
    Set ShToCopy = CopyFromBook.Worksheets("Sheet1") 
    Set CopyToWbk = Workbooks("Consolidated Tracker File.xlsx") 

    CopyFromBook.Close 
End Sub 
+0

私はあなたに私の投票をします。インデントのためではなく、あなたも「短い」答えを与えたからです。 :D – YowE3K

+0

BTW - あなたのプロフィールを見る私はほとんど私のヴィンテージでなければならないと思う - 私は仕事でプログラミングを始めてから約1年後にゴミ箱80を使い始めた。 – YowE3K

+0

私はその時点で9だった:D – Excelosaurus

0

ワークブックの変数に代入していることを使用します閉じる(または他の操作)。

Sub CopyingRange() 

Dim CopyFromBook As Workbook 
Dim CopyToWbk As Workbook 
Dim ShToCopy As Worksheet 

Set CopyFromBook = Workbooks.Open("C:\Users\MIRAR\Desktop\AD HOC\DEMO FILE - WIP\SHARNY.xlsx") 
Set ShToCopy = CopyFromBook.Worksheets("Sheet1") 
Set CopyToWbk = Workbooks("Consolidated Tracker File.xlsx") 

CopyFromBook.Close 

End Sub 
+0

私たちはまったく同じトラックを取ったが、私の(更新された)答えでコードをインデントした:P – Excelosaurus

+0

助けてくれてありがとう!私は@Excelosaurusの答えを使用してあなたのものにマッチしました! – Christelle

関連する問題