ALL EXCEL Program VBA

【初心者でも簡単】EXCEL-VBAで対象EXCELを選択させて全シートを印刷する方法(クラウドソーシングで活躍)

本記事で出来ること

本記事では、以下の内容が出来ます。
おまけ程度ですが、印刷するところにも触れています。
 

-出来ること-
①利用者に処理対象のEXCELを都度選ばせる
上記①選択したEXCEL内の全シートを印刷できる

はじめに

EXCEL VBAの作成依頼を受けた際に、
私が大切にしていることは 2つあります。
 
 1つ目は、正しく依頼内容をコーディングすること(当たり前)
 2つ目は、VBA動作時の環境に応じたプログラム構成にすること(どゆこと?)
 
前者は、文字通りです。実現したい内容を達成できるプログラムを組めばよいです。
後者については 深堀します。

VBA動作時の環境って?

僕自身が良く体験していたのですが、
VBA作成依頼で一番困るのは 納品後のメンテナンスです。
 
プログラムを作成していたタイミングでは
意図していなかった動作環境で VBAが実行された場合
当然ですが VBAはエラーになります。
 
一例をあげますが、
例えば、VBAが他のEXCELファイルと連携している場合、
連携先EXCELファイルの保管場所(ディレクトリ情報)が変更されていたら 
VBAはエラーになります。
(VBAで設定していたディレクトリ情報が変わるため)
 
作り手からしたら「なんでそんなことも…」と思いますが、攻めてはいけません。
依頼者(ノンプログラマー)からしたら 本当に良く分からないものなんです。
 
それでも、ファイル保管場所が変更されるたび
納品後のメンテナンス」の仕事が増えてしまっては
作り手としては たまったものではありません
 
それでは、どのようにすればよいのか。
 
連携先EXCELを都度 依頼者(VBA利用者)に選択させれば良いのです。

コード

解説

 ↑のコード実行後の画面↓

↑のコード実行後の画面↓

↑のコード実行後の画面↓

おわりに

いかがでしたでしょうか。

利用者に都度EXCELファイルを選択させる方式でVBAを組むと、ファイルディレクト情報変更に伴う「納品後のメンテナンス」の依頼数を減らすことができます。(頻度も減ります。)

そしてそれは依頼側が抱える「得体のしれないストレス」を軽減することができ、満足度を向上することにも繋がります。

「得体のしれないストレス」とは、発生したエラーが プログラム側が原因なのか、自身が原因のものなのか、問題の切り分けが難しいことから生じる 「何をどうしたらいいか分からない」状態のことです。

仮に、仮にプログラム側が原因だったとしても、ツール改修依頼も言葉選びが難しいことから、満足度を低下させることに繋がります。
 
連携先のEXCELファイルを選択させる手法は、「ファイル連携には問題ない」という問題を事前にクリアでき、原因判明を一歩早く行うことができ、
依頼側・作成側の双方にとって 大きなメリットを与えてくれるため、非常にオススメしたい手法の一つとなります。
 
このようにちょっとしたプロセスを追加することで、大きなメリットを享受することができるため、活用いただければと思います。

 




-ALL, EXCEL, Program, VBA
-, , ,