Excel VBA 閉じているブックから転記する

B!

 

目次

マジシャンもびっくり まるで手品

こんにちは。伊川(@naonaoke)です。

今回は、閉じているExcelから、値を転記します。

今回の内容は、ご視聴者様からの質問でした。

御視聴者様からのコメント

伊川先生のおかげで相対パスが理解できました!そのおかげで作りたかったものが作れました!!どこのサイト調べてもわかりませんでした笑今後ともよろしくお願いします!
こういう「何をしたいか」をピンポイントでそこだけ端的に動画にしていただけるのはめちゃくちゃありがたいです!!!⿻*.·+。感。( ˘̩̩̩̩̥﹏˘̩̩̩̩̥ )。動。+.·*⿻
vba入門のような内容を順序立てて動画作ってくれるとチャンネル登録、再生数伸びると思います。エクセルのユーチューバーあまりいないので、需要あると思います。アクセスはあまり需要ないかな

 

問題提起

(株)IKAWAの柄久 瀬瑠子(エク セルコ)は、上司から下記の依頼を受けました。

閉じているExcelにデータを転記することはできないか?

どのようなコードを記載するのか?

解決策

回答

・Workbooks.Openをつかうと意外とカンタンです。コードを簡単にするため、相対パスをつかいます。

 

Workbooks.Openと相対パス

エクセルVBAで既存のワークブックを開くためには「Workbooks.Open」文を使います。

相対パスを使って同一フォルダ内にファイルを置きます。

閉じているブックへ転記 作成手順その1 データベース確認


  • test.xlsxは閉じておきます。
  • tenki.xlsmの値を転記します。

必ず、同一フォルダにおいてください。


上の内容を転記します。

閉じているブックへ転記 作成手順その2 コードを仕込む


 Sub Test()
    
  'ブックを開く
  Dim wb1 As Workbook
  Workbooks.Open ThisWorkbook.Path & "\test.xlsx"
  Set wb1 = ActiveWorkbook 'アクティブなワークブック
 
  'アクティブワークブックから、マクロブックにデータコピー
  
  wb1.Worksheets(1).Range("A1:H10").Copy Destination:= _
  ThisWorkbook.Worksheets(1).Range("A1:H10")
 
  'ブックを閉じる
  Application.DisplayAlerts = False
  wb1.Close
  Application.DisplayAlerts = True
  
 End Sub

 

ここがポイント

ここがポイント

そんなに難しくないと思います。今回は本当に簡単なコードなので、ぜひ、みなさんのスキルにしてください。

 

まとめ

今回のまとめ

上司に見せたところ、思いのほか、評価が上がった柄久 瀬瑠子(エク セルコ)なのでした。

今回のサンプルファイルは、No108です。

毎日の業務が、3時間短縮できます

わからない事を延々と考えるのは、無駄です。

  • なんで作動かないの?
  • もうやだ!VBAなんか嫌い!
  • ネットで調べても情報がない!

必ず作動するコードが、ここにあります。

最新の記事はこちらから