今までExcelシートで行っていた
1週間の各曜日毎の作業時間の計算を、VBで行う画面を作成しています。
画面イメージとしては下記のような感じです。
【】はテキストボックスで、
Excelのセルのような扱いをしています。
画面入力箇所に数値を入れて、
lostfocusで各テキストボックスを抜けると、
計算結果出力箇所に出力されます。
画面入力箇所の数値を変更したら、再計算されます。
(数値の妥当性チェック等は、説明では省略します)
規定時間【(1)規定時間(画面入力箇所)】
午前の作業時間【from(画面入力箇所)】~【to(画面入力箇所)】=
【(2)to-fromの時間(計算結果出力箇所)】
午後の作業時間【from(画面入力箇所)】~【to(画面入力箇所)】=
【(3)to-fromの時間(計算結果出力箇所】
1日の作業時間【((2)+(3))-(1)(計算結果出力箇所)】
これを7日分作ると、
変数が沢山になってしまうので、
サブルーチン化しようと思っています。
イマイチうまく出来ないので、
アドバイス、ソース等をお願い致します。
No.2
- 回答日時:
こんにちは。
maruru01です。No.1の人の言う通り、配列を使用するなどしましょう。
または、ユーザー定義型を使用するのもいいでしょう。
そして、配列なりユーザー定義型なりを、引数として渡して、作業時間を計算して返すFunctionプロシージャを作成すればいいのではないでしょうか。
No.3ベストアンサー
- 回答日時:
画面のテキストボックスを配列にし、
LostFocus時、そのテキストボックスのindexを引数にした
サブルーチン(計算部分)を作ればいいと思います。
No.4
- 回答日時:
さて サブルーチンとするやり方ですけど、
テキストボックスは インデックス化して、番号を与えただけで どのテキストボックスかわかるようにしましょう。
また、サブルーチンの中では、なるべくグルーバル変数を使わないようにするなどの配慮も必要です。
サブルーチンの中で使う変数は、サブルーチン内で宣言するものなんです。
あと、それを7日分作ると大変とありますが、まず 1日分は できたのでしょうか?
1日分が出来ているのであれば、それをサブルーチン化することは たやすいことですよ。
1日分の作り方ができないのか、それとも 1日分は 出来てるが、それをサブルーチン化するのが できないのか どちらか 分かりませんからね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) セルに特定の色が出た時だけ、式を発動させたい 4 2022/06/17 10:32
- 減税・節税 《ふるさと納税》前回質問のアップデート 3 2022/10/05 14:16
- Excel(エクセル) エクセルの関数について 5 2023/01/26 15:26
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- その他(コンピューター・テクノロジー) ffmpeg 動画から複数の箇所を指定して、一度の作業で同時に切り出したい 1 2022/07/03 08:35
- その他(お金・保険・資産運用) Xでは毎月6万円を超える収入を得ているようですね。 また、Yにつきましては、雇用契約書上では毎月88 2 2022/09/15 13:16
- その他(コンピューター・テクノロジー) 量子コンピュータの動作原理がわかりません。同じビットが、1でも0でも有って良いだろうか? 3 2023/02/04 03:20
- Excel(エクセル) エクセル 自動計算 1 2023/01/30 13:28
- Excel(エクセル) Excelで、あるセルだけ入力させたい、オートフィルターも使わせたい際のシートの保護 2 2023/02/23 15:14
- Chrome(クローム) Chromeの描画領域を2分割して異なるスクロール位置を同時に表示させることはできますか 1 2023/03/01 16:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
例外処理のフローチャートの記...
-
サブルーチンを認識しません。
-
Excel VBAで、ユーザーフォー...
-
perlの構文でカンマの意味が分...
-
Excel VBAでリンク切れをチェッ...
-
use lib qw(変数名);は無理?
-
Excel VBA 定義されたプロージ...
-
VBAで旧字体を異字体に一括で変...
-
Excel VBA 『Call』で呼び出す...
-
VBAで別モジュールへの変数の受...
-
ユーザー定義関数に#NAME?が返...
-
"JScript"が見つかりません!
-
ベースモジュールって?
-
pythonのプログラミングについ...
-
「デバイスは PRN を初期化でき...
-
エラー
-
erf(x)とerfc(x)のカタカナ読み...
-
他Book(シートモジュール)のマ...
-
YAMLについて
-
Net-SNMPのPerlモジュールでTra...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
例外処理のフローチャートの記...
-
Excel VBAで、ユーザーフォー...
-
COBOLで、Shellを起動するには?
-
モジュールとサブルーチン
-
”:”がいっぱいの文について。
-
GOSUB命令とは
-
ACCESSのVBAでPrivate Sub ~en...
-
サブルーチンを使った再帰的な...
-
サブルーチンを認識しません。
-
初歩的な質問なのですが、サブ...
-
オフコン(富士通Kシリーズ)...
-
perlの構文でカンマの意味が分...
-
サブルーチンの中にサブルーチ...
-
配列と互換性のない型の要素に...
-
ExcelVBA AddinでOnAction
-
perlを使って英文だけを取り出...
-
Excel VBAから利用できるフリー...
-
Attempt to free unreferenced ...
-
サブルーチンやif分以外での中括弧
-
サブルーチンに引数を2つ以上...
おすすめ情報