ここから本文です

マクロ初心者です。 少しだけ触ったことがある程度の知識しかありません。 下記...

アバター

ID非公開さん

2019/1/2218:08:37

マクロ初心者です。
少しだけ触ったことがある程度の知識しかありません。
下記のマクロについて教えてください。

Aというフォルダの中にa、b、cというエクセルがあります。

aのシート1にbのシート1を
aのシート2にcのシート1を
それぞれ全選択してコピー、貼り付けを行いたいです。
b、cのファイル名は毎日変わります。(日付が表示されるため)
※b、cのファイル名はb20190122、c20190122のように日付のみが変わるので、b、c部については変わりません。

この動作を行うマクロを教えてください。

閲覧数:
55
回答数:
2
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

ina********さん

2019/1/2311:14:36

aブックの標準モジュールに下記コードをコピペしてください。
マクロ入りなので、a.xlsmとして保存します。

bブックとcブックは【閉じた状態】で、フォルダ内のbブック
とcブックは各々1つづつしかないという前提です。
(コードを簡単にする為です。)

前日の分が残っているなどというのはNGです。

なお、同一フォルダ内であればフォルダ名はAでなくても任意で構いません。


Sub CopyPaste()
    Dim Fpath As String
    Dim Fname As String
    Dim Wb As Workbook
    
    Fpath = ThisWorkbook.Path & "\"
    
    'b==>a
    Fname = Dir(Fpath & "b*.xlsx")
    Set Wb = Workbooks.Open(Fpath & Fname)
    Wb.Worksheets("Sheet1").Cells.Copy ThisWorkbook.Worksheets("Sheet1").Range("A1")
    Wb.Close False
    
    'c==>a
    Fname = Dir(Fpath & "c*.xlsx")
    Set Wb = Workbooks.Open(Fpath & Fname)
    Wb.Worksheets("Sheet1").Cells.Copy ThisWorkbook.Worksheets("Sheet2").Range("A1")
    Wb.Close False
    
End Sub

アバター

質問した人からのコメント

2019/1/23 16:54:43

できました!ありがとうございました!!

ベストアンサー以外の回答

1〜1件/1件中

c72********さん

2019/1/2310:54:27

b、cのファイル名は語句+今日日付で決め打ちすると、たとえば翌日に使えなくなるので、ダイアログで開いて選択する感じの。

Sub Sample()
Dim フォルダ As String, 基本ファイル As String, フルパス As String, _
転記ファイル As String, rc As String
'画面更新停止/高速化の為
'Application.ScreenUpdating = False
'以下でフォルダ名を指定/\で終わる事
フォルダ = "D:\My Documents\Desktop\test\"
'以下で貼り付けるファイル名を指定/拡張子込み
基本ファイル = "Book4.xlsm"
'ファイルを開く
Workbooks.Open フォルダ & 基本ファイル
'ダイアログを開いてファイルを選択
Do
rc = MsgBox("ファイルを選択してください。" & vbCrLf & "※中止する場合は、次の画面で「キャンセル」", vbInformation, "ファイル選択")
フルパス = Application.GetOpenFilename("Excel ブック,*.xls?")
'「キャンセル」選択で抜ける
If フルパス = "False" Then Exit Do
'転記ファイルを開く/ReadOnly
転記ファイル = Dir(フルパス)
Workbooks.Open フルパス, ReadOnly:=True
DoEvents
With Workbooks(転記ファイル)
Workbooks(基本ファイル).Activate
.Sheets(1).Copy After:=Sheets(Sheets.Count)
.Close
End With
Loop
End Sub

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる