
ExcelVBAプログラミングを勉強する過程で、近い将来、変更が生じそうな「消費税適用税率」や「値引き率」など、ユーザー側の判断で必要に応じて、任意に変更ができるとコストダウンになりますよね。
みなさん、こんにちは。セルネッツ竹本です。
今回は、完全な固定値をプログラム内で書いてしまう「ハードコーディング」とは何か。
そのメリット、デメリットについて、解説いたします。
税率・料率の変更対応
税率や値引き率が変わるたびに修正を頼んでいませんか?
- 消費税率や値引き率がVBAに直接書かれ、自分で変えられない
- 料率が変わるたびに外注へ修正を依頼し、費用がかかる
- 固定値がどこに書かれているか分からず、直し漏れが怖い
そのお悩み、設定値をシートで変更できる可変設計で解決できます。Excel専門のシステム開発会社『セルネッツ』なら、税率・料率の設定シート化、固定値の洗い出し、変更時の入力チェックまで対応します。安全性とコストのバランスもご相談しながら決めます。
\Excel専門特化 × 低価格 × スピード対応/
全国対応・お見積もり無料
◆ハードコーディングとは?
システム開発を進めてゆく過程で、「消費税適用税率」や「値引き率」などを、プログラム内に直接コーディングすることを言います。
冒頭の画面図は、Excelワークシート上で、ユーザー側がいつでも任意に変更ができるため、変更があっても、プログラム修正は必要ありません。
いっぽう、下図のようにVBAソースに直接、値を書いてしまう方法もあります。
これが「ハードコーディング」です。

どちらにも、メリット、デメリットがあります。
システム開発会社の立場からすれば、「不具合のリスクを抱えることにもなるため、あまり内部を触って欲しくない。」
という事情もありますが、大規模システムでもなく、特定の事務員のみが使うのであれば、ユーザー側の利便性や変更時の発生コストを考え、可変で提供することが望ましいと考えます。
【固定】で書くメリット、デメリット
まず開発者にとってのメリットですが、管理や仕組み面では、責任要素が増えることもなく、開発においては、「楽(ラク)」になります。
前述のとおり、ユーザによる設定ができないので、品質的にも安心です。
但し、変更が生じた場合は、プログラム修正は間違いなく必要となりますので、発生コストの問題が浮上してきます。
ユーザに合意の元であればよいですが、「聞いてないよ」、「不親切」、「意図的」と捉えられないよう設計段階の仕様で決めておくことが重要になります。
【可変】で設計メリット、デメリット
開発者目線でははく、利用者であるユーザ目線においては、ユーザー責任にはなりますが、改修コスト発生もなく、いつでも変更を適用することが最大のメリットになります。
◆「消費税率」など変更が想定される情報などは可変設計に
これまで消費税率は、3%、5%、8%、10%と改定をしてきました。
この先だって、改定は想定範囲内ですから、システム開発する際は、原則、プログラム記述するのではなく、任意に設定できるよう「可変」で設計する方が、ユーザーにとって、コスト面では安心です。
但し、これを良しとするかどうかは、開発理念にも直結するため、ユーザがシステムに介入するリスクも考えた場合、あえて意図的に、プログラム記述する場合もあります。
個人的には、大規模システムではないExcel業務の場合は、可変がお客様のためのような気がします。
(Point)
ExcelVBAマクロは、基幹系の全社業務を担うシステム規模ではない点や、経理、総務のごく少人数で活用するツールであれば、可変設計のメリット、デメリットを伝えたうえで、最終仕様を決定することをおすすめいたします。
修正コスト発生となれば、「社内稟議」の問題もありますので、コストパフォーマンスを優先するのか、コストが発生しても安全性を優先したいのか相談の上、仕様決定が良いと思います。
今回のテーマは、「ハードコーディング」について、解説を行いました。
本記事が、品質向上において、ご参考お役立てになれば幸いです。
相見積もり歓迎
改修の費用と範囲を、事前に明確にします
- 基本料金50,000円+時間単価(税別)で算出します
- 設計は時間単価11,000円、開発は10,000円(税別)
- システム導入相談は60分無料で承ります
他社との相見積もりも歓迎です。費用は基本料金50,000円+時間単価(税別)で、作業範囲を決めてからお見積もりします。可変にするほど誤操作への配慮も必要になるため、メリットとデメリットを正直にお伝えします。Excelに向かない要件なら、その旨もご説明します。
\Excel専門特化 × 低価格 × スピード対応/
全国対応・お見積もり無料