掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
二つのEXCEL.Book間でコピ−、ペーストを行うには? (ID:80772)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
度々、参考にさせてもらっています。 タイトルの通りなのですが、バインディングを事前バインディングの変数を 使用すればできるのですが実行時バインディングの変数を使うと うまく動きません。 コピ−する範囲は、シ−トの中の複数のセルですが セルの範囲はランダムなので変数を使っています。 以下が、書いているソースの簡略化したものです。 Dim xls_App As object Dim xls_Book1 As object 'コピー元ブック Dim xls_Sheet1 As object 'コピー元シート Dim xls_Book2 As object 'コピー先ブック Dim xls_Sheet2 As object 'コピー先シート Dim MinGyo As long 'コピ−位置の始点(最小行名) Dim MinRetu As long 'コピー位置の始点(最小列名) Dim MaxGyo As long 'コピ−位置の終点(最大行名) Dim MaxRetu As long 'コピー位置の終点(最大列名) Set xls_App = CreateObject("Excel.Application") Set xls_Book1 = xls_App.Workbooks.Open("コピー元ファイル名") Set xls_Sheet1 = xls_Book1.Worksheets("コピ−元シート名") Set xls_Book2 = xls_App.Workbooks.Open("コピー先ファイル名") Set xls_Sheet1 = xls_Book1.Worksheets("コピ−先シート名") '選択範囲のコピー xls_Sheet1.Range(xls_Sheet1.Cells(MinGyo,MinRetu),xls_Sheet1.Cells(MaxGyo,MaxRetu)).Copy Application.CutCopyMode = False 'コピー先ブックをアクティブにする xls_Book2.Activate 'コピー先シートをアクティブにする xls_Book2.Worksheets("コピー先シ−ト名").Activate '"A3"をコピ−開始地点とする xls_App.Range("A3").Select 'ペ−ストを行う xls_App.ActiveSheet.Paste ←ここで落ちます エラ−は Worksheet クラスの Paste メソッドが失敗しました。 と出ます。 どなたかご教授をお願いいたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.