別ブックを読み取り専用で開いて、値を取得して閉じる。

執筆者:

カテゴリ:

,

目的

  • 別のワークブックを読み取り専用で開きたい。
  • 値を取得して元ブックに転記したい。
  • 開いたブックを閉じたい。

その一例

  1. 同じフォルダに 2 つのワークブックを準備しました。
「A.xls」と「B.xls」。
「A.xls」と「B.xls」。
  1. 「A.xls」の「1」枚目のシートの「A1」には「A」と入力されています。
A.xls
A.xls
  • 「B.xls」の「1」枚目のシートの「A1」には「B」と入力されています。
  • B.xls
    B.xls
  • 「A.xls」で下記マクロを実行してみます。「ReadOnly」パラメーターを「true」にして読み取り専用で開いています。
    Sub 別ブックを読み取り専用で開いて値を取得して閉じる()
      Dim b As Workbook
      Set b = Workbooks.Open( _
       Filename:=ThisWorkbook.Path & "¥B.xls", _
        ReadOnly:=True _
    ) '開いたものを代入
      ThisWorkbook.Worksheets(1).Range("A2").Value = _
       b.Worksheets(1).Range("A1").Value '転記
    b.Close False '閉じる
    End Sub
  • 「A.xls」の「1」枚目のシートの「A2」セルに値「B」が転記されました。
  • 「B」が転記されている。
    「B」が転記されている。

    テスト環境

    • Windows 10(64 ビット)
    • Microsoft Office Excel 2003

    以上、閲覧ありがとうございました。