Excel VBA質問箱 IV

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

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


12361 / 13646 ツリー ←次へ | 前へ→

【10802】コピー&ペーストについて take2 04/2/14(土) 15:14 質問
【10818】Re:コピー&ペーストについて IROC 04/2/14(土) 22:19 回答
【10883】Re:コピー&ペーストについて take2 04/2/17(火) 22:23 質問
【10887】Re:コピー&ペーストについて IROC 04/2/18(水) 9:08 回答
【10892】Re:コピー&ペーストについて take2 04/2/18(水) 12:45 質問
【10893】Re:コピー&ペーストについて IROC 04/2/18(水) 13:00 回答
【10928】Re:コピー&ペーストについて take2 04/2/18(水) 23:09 お礼

【10802】コピー&ペーストについて
質問  take2  - 04/2/14(土) 15:14 -

引用なし
パスワード
   はじめまして。初心者ですがよろしくお願いします。

例えば、毎月 1月、2月、・・・・というファイルが作られています。
その一部分をひながたのファイルにコピー&ペーストして使っているのですが
毎月同じことをやっているので、マクロでなんとかならないかと思っております。

どうかご教授ねがいます。

【10818】Re:コピー&ペーストについて
回答  IROC  - 04/2/14(土) 22:19 -

引用なし
パスワード
   詳しいことが分からないので、当てはまるか分かりませんが、
テンプレート形式(.xlt)でファイルを作っておいては如何でしょうか?

xltファイルは普通に開くと、ファイル名が変化してxlsファイルになるので
ひながたのファイルは変更しない(されない)で作業することができます。

定形の様式のブックを使い回すときに便利です。

【10883】Re:コピー&ペーストについて
質問  take2  - 04/2/17(火) 22:23 -

引用なし
パスワード
   IROC さん返答ありがとうございます
質問を出しておきながら、出張にでてしまい、お礼が遅くなり
申し訳ありませんでした。

テンプレート形式というものは使ったことがなかったので、どのような
ものかためしてみたところですが、あまりうまくいかなかったのでもう少し
ご教授願います。
私がやりたいのは例えば「2月」という
ファイルの一部分をひながたにコピー、「3月」というファイルの一部分を同様に
コピーするというふうにファイル名が違うものでも同じ範囲をひながたにコピーができるマクロを作りたいと思っています。テンプレートを使ってできるのでしょうか?よろしくおねがいします。

【10887】Re:コピー&ペーストについて
回答  IROC  - 04/2/18(水) 9:08 -

引用なし
パスワード
   ひながた.xlsにマクロを作っておいて、

たとえば、2月.xlsのsheet1のA1:C10を
ひながた.xlsのsheet1のA1:C10にコピー&貼り付け。

もしくは、
3月.xlsのsheet1のA1:C10を
ひながた.xlsのsheet1のA1:C10にコピー&貼り付け。

といったように状況に応じて
コピー元のファイル(2月.xlsや3月.xls)をダイアログで指定すると
上記のコピー&貼り付けが実行されるような仕様でしょうか?

【10892】Re:コピー&ペーストについて
質問  take2  - 04/2/18(水) 12:45 -

引用なし
パスワード
   ▼IROC さん:
>ひながた.xlsにマクロを作っておいて、
>
>たとえば、2月.xlsのsheet1のA1:C10を
>ひながた.xlsのsheet1のA1:C10にコピー&貼り付け。
>
>もしくは、
>3月.xlsのsheet1のA1:C10を
>ひながた.xlsのsheet1のA1:C10にコピー&貼り付け。
>
>といったように状況に応じて
>コピー元のファイル(2月.xlsや3月.xls)をダイアログで指定すると
>上記のコピー&貼り付けが実行されるような仕様でしょうか?

そのとおりです!! 例えば2月だけのファイルを参照するのでしたら、つくれるんですがファイル名がちがうものとなるとわかりません・・・
たとえば、コピー元のファイルとひながたを両方開いておいておけばコピーができる
なんていうマクロをつくればいいのでしょうか?(その方法さえわかりませんが)
教えてください。

【10893】Re:コピー&ペーストについて
回答  IROC  - 04/2/18(水) 13:00 -

引用なし
パスワード
   GetOpenFilename メソッドをお試し下さい。
一応、サンプルコードも掲載しておきます。

Sub Sample()
Dim myFile As String
Dim myBook As Workbook

  myFile = Application.GetOpenFilename("Excel ファイル (*.xls), *.xls")

  If myFile = "False" Then Exit Sub
  
  Set myBook = Workbooks.Open(myFile)

  myBook.Worksheets(1).Range("A1:C10").Copy _
  Destination:=ThisWorkbook.ActiveSheet.Range("A1")
  
  myBook.Close
  
End Sub

【10928】Re:コピー&ペーストについて
お礼  take2  - 04/2/18(水) 23:09 -

引用なし
パスワード
   IROCさん、ありがとうございます!!
これで思っていたとおりのものができます。
やっぱりVBAを使いこなせる人ってすごいですね

本当にありがとうございました

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