Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8805 / 76732 ←次へ | 前へ→

【73495】Re:別ブックからのコピペについて(VBA)
お礼  さわ  - 13/1/16(水) 9:26 -

引用なし
パスワード
   試行錯誤した結果、解決しました!

最終的に以下のような形でできるようになりました!
マクロを叩いているブックの指定方法が違ったんですね。

ありがとうございました。
これからエラー処理を付け足して、使わせていただきます!

Private Sub sample()
  Dim OpenFileName As String
  OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls*")
  Workbooks.Open OpenFileName
  Application.Workbooks(Dir(OpenFileName)).Worksheets(Sheets(1).Name).Cells.Copy _
  Application.ThisWorkbook.Worksheets("指定シート").Cells(1, 1)
  Workbooks(Dir(OpenFileName)).Close
End Sub


>すいません。
>VBAに触った事がない者なのですが、
>どうしてもやりたい事があり、現在調べています。
>
>環境はExcel2003です。
>
>やりたいことは、
>「Aのブックのシート1枚からBのブックへシートの中身を全てコピーすること」です。
>
>AのブックとBのブックは同じパスに存在します。
>
>Aのブックの名前はランダムなので、
>こちらでGetOpenFilenameで取得したものを使います。
> →今はその方法しか知りません。
>Aの一番左側にあるシートを取得(コピー)します。
>最終的にAのブックを閉じます。
>
>Bのブックの名前は固定です。
>Bのコピー先シート名は固定です。
>
>現在、訳も分からず以下ようなプログラムでとまっています。
>
>
>Private Sub CommandButton1_Click()
>  Dim OpenFileName As String
>
>  OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls*")
>  Workbooks.Open OpenFileName
>
>  Application.Workbooks(OpenFileName).Worksheets("Sheets(1).Name").Cells.Copy _
>  Application.Workbooks("b.xls").Worksheets("Sheets(1).Name").Cells(1, 1)
>  
>  Workbooks("OpenFileName").Close
>End Sub
>
>
>ステップインで調べていると、
>「インデックスが有効範囲内ではありません。」
>とでて、とまっています。
>
>Aのブックを開いた後、コピー
>Bのブックへペーストが出来ていないようです。
>
>今、構文などが全く理解していないので、
>  Application.Workbooks(OpenFileName).Worksheets("Sheets(1).Name").Cells.Copy _
>  Application.Workbooks("bb.xls").Worksheets("Sheets(1).Name").Cells(1, 1)
>について調べています。
>
>よろしくお願いします。
892 hits

【73466】別ブックからのコピペについて(VBA) さわ 13/1/14(月) 5:40 質問
【73468】Re:別ブックからのコピペについて(VBA) 13/1/14(月) 7:31 発言
【73484】Re:別ブックからのコピペについて(VBA) さわ 13/1/15(火) 1:20 質問
【73495】Re:別ブックからのコピペについて(VBA) さわ 13/1/16(水) 9:26 お礼

8805 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free