ワークブックを開くのと変数代入をシンプルにしたい
初心者の時代に目から鱗だったことです。
ワークブックを開くのと同時にワークシート変数へ代入するのを簡単に行えないかなと調べたら、
簡単にできました。
ワークブックを開くのと変数代入を一度に行うサンプルコードシート
そもそも関数の戻り値を理解したのも、これがきっかけだったと思います。
あくまでも処理を簡単にする=関数としか理解をしていませんでした。
Dim ws As Worksheet '■下記のような二行になったコードを Workbooks.Open ("C:\user\sample.xlsx") Set ws = ActiveWorkbook.Worksheets(1) '■コンパクトに1行にまとめてしまう事が可能です。 Set ws = Workbooks.Open("C:\user\sample.xlsx").Worksheets(1) ■理由 'Workbooks.Openの戻り値はWorkbookオブジェクトであるため、WorkbookオブジェクトのプロパティのWorkSheeetsを取得します。 'そのまま Set wsとすることで変数に代入してしまいます。
初心者だからこそ丁寧に書くという事は大事なのですが、
丁寧すぎるのは後で見づらいケースがあります。
誰が読んでもわかるように、コードを「シンプルに書く」という事を常に心がけたいなと思います。
コメント