2017-02-23 8 views
0

.xlmファイルとして保存されたスキャン(SCANファイル#.xlm)を処理してフォーマットするマクロを作成しています。最終結果は、 Excelファイル。私はこの議論の目的のためにSCANMacroと呼ぶワークブックにマクロを作成しています。そのときに開かれているSCANfile#ワークブックと同時に開くことを意図しています。マクロブックから複数のワークブックにコピーして貼り付けるExcel

Sub Copy and Paste Data() 
'select cell on target workbook/worksheet 
Range("X1").Select 
' 
'select the data from the saved workbook that the macro runs from 
' 
Columns("SCAMNmacro.xlsm C:G").Select 
Selection.Copy 
' 
'Paste into SCANfile#.xlm.xml 
' 
Windows("SCANFILE01.xml").Activate 
Range("X1").Select 
ActiveSheet.Paste 

End Sub 

私が作成したSCANfile01.xmlから実行している限り、これは素晴らしいことです。別のスキャンファイルを使用してマクロを有効にしたワークブックを開くとすぐにエラーが発生します。

マクロを任意のスキャンシートで使用できるように設定するにはどうすればよいですか? ThisWorkbookとActiveworkbookを無駄に使ってみました。私はプログラマーではないので、これのほとんどはVBAエディターの中で微調整されて記録されています。適切なワークブックを参照するための

答えて

0

使用ワークブック変数:

Dim MacroSheet as Workbook 
Set MacroSheet = ThisWorkbook 

Dim ScanFile as Workbook 
Set ScanFile = Workbooks.Open("PATH TO YOUR FILE") 

は、その後、あなたがこのようにそれを使用することができます:勤務

MacroSheet.Columns("G").Copy 
+0

。ありがとう! – chaoslodge

関連する問題