コードを修正せずに済む!Excel VBAの効率的なプログラミング手法

Sdílet
Vložit
  • čas přidán 5. 09. 2024

Komentáře • 11

  • @sonsfun125
    @sonsfun125 Před 6 měsíci +1

    つい最近別部署から作成したシステムを使わせて欲しいと依頼があり、自分の部署専用に作っていたものをこのように設定シートを作成してマクロがわからなくてもすぐに変更できるように作り変えたところでしたのですごくタイムリーな内容でした!
    とりあえず出来ればいいという考えから修正変更に柔軟に対応できるシステムを構築するという考え方に変わりました!

    • @vba-wonder
      @vba-wonder  Před 6 měsíci

      コメントありがとうございます!
      今回の動画の内容がコメ主さんの開発意欲を沸き立たせたのであれば、
      私としては嬉しい限りです(^^)
      設定シートには色々値を設定できるので、使い方次第でかなりフレキシブルな開発もできるかと思います。
      関連動画でもいくつかサンプル的に紹介しておりますので参考にしていただければと思います。
      引き続きましてご視聴よろしくお願い致します!

  • @ryoyama9598
    @ryoyama9598 Před 11 měsíci +2

    ご説明の内容に大変共感しています。おっしゃるとおり、マクロを使ったツールをいくつも作成したり、より複雑なものがあったりすればするほど時間が経つと忘れてしまいますよね。改修するために再度読み返す必要があってこれもかなり大変です。
    私も同じようにワークシート上に設定シートを置き、VBAではなくシート上のパラメータを変更することで、提供後の不具合に対する作業の手間を減らすようにしています。VBAだけに限らずプログラミングする上ではとても重要な視点ですね。
    動画の内容をみますと、VBAだけではなくどう使えばいいのかという点も含め、かなり究めていらっしゃるようですね。

    • @vba-wonder
      @vba-wonder  Před 11 měsíci +1

      コメントありがとうございます!
      コメ主さんもこの管理方法に共感いただけるとのこと、非常に嬉しく思います。
      きっと同じような経験や考えをお持ちなのかなと感じます。
      この方法は、実際の業務においても非常に使い勝手が良いですよね。
      実は、このような手法を思いつくのは、実際に業務で困った経験があるからかな、と思っています ^^;
      私の経験上、コメ主さんのような方と一緒に仕事をしたら、きっと刺激的だろうと・・(^^)
      (実際の現場では色んな開発者がいて、その中で同じ思考を持った方と出会うのは貴重ですね)
      引き続きましてご視聴お願いします!

  • @KK-yl7zj
    @KK-yl7zj Před 9 měsíci

    外出し、自分で思いついて気に入っていたんですが、同様のことを紹介している事例を始めてみたので嬉しいです!
    私の場合は設定の表はテーブル化しています。こうすることでユーザー側で設定を追加してもコードを変更する必要がなくなります。
    また、シート名やテーブル名はConstにすることで容易に変更できるようにしています。(基本的に変更禁止としていますが、、、)

    • @vba-wonder
      @vba-wonder  Před 9 měsíci

      シートに値を持たせると本当に便利ですよね!
      このような使い方は開発者のメリットが多いように思います。
      テーブル形式の形で持っておくと、規則性が有りなおのこと扱いやすくなりますね。
      ユーザー側でも対処できるようにしているとのこと、
      まさに「ストレスフリー」と言った感じでしょうかね(^^)
      引き続きましてご視聴お願いします!

  • @ayayagogo7
    @ayayagogo7 Před 11 měsíci +1

    外部出し、早速使用させてもらってます
    私なりの改良点ですが
    パラメータ:部署A_集計範囲
    値:B2:B13 ← これを名前ボックス名「部署A_集計範囲」
    にすると、設定シートの途中で行列追加などで
    VBAのソースコードのコード書き換えしなくて済みますよね!
    Range(設定シート.Cells(3,2))
         ↓
    Range(設定シート.Range("部署A_集計範囲"))
    VBAのソース内でのマジックナンバーを無くすと更に良いのではないでしょうか!

    • @vba-wonder
      @vba-wonder  Před 11 měsíci +1

      コメントありがとうございます!
      外部出しを活用されているとのこととても嬉しいです!
      貴重なご意見をいただき、ありがとうございます。他の方へのヒントにもなるかと思います。
      ちなみに、「名前」が意図しない変更してしまうことがあるかもしれませんのでその辺はご注意かもしれませんね。
      (私自身「名前」のスコープの扱いなどで苦い経験も...笑)
      コメ主さんも外部管理する設定シート側の可読性も考慮されている時点で良い感じの経験値をお持ちかと・・
      いやー、素敵です(^^)
      引き続き動画をご視聴いただけると嬉しいです!