VBA ユーザーフォーム 連動型コンボボックスの作り方

  Рет қаралды 3,614

セルネッツ業務効率化

セルネッツ業務効率化

Күн бұрын

#VBA #ユーザーフォーム #コンボボックス #UserForm #画面設計
VBA ユーザーフォーム連動型コンボボックスの作り方をご紹介。
【データ絞り込み選択(大→中→小)】
1.カテゴリ名>セミナー名
2.カテゴリ名>セミナー名>レベル
3.カテゴリ名>セミナー名>レベル>区分
上記は例でですが、階層がどんなに深くなっても、
基本的には、「Master構造」で対応するスキルを身につけましょう。
データ選択肢のプログラム固定記述は
・拡張性
・可読性
・改修性
の面からも、品質低下を招きます。
製品レベルでの品質を目指す方は、納品責任についても、高い意識で向き合う覚悟が必要です。
動画をご覧いただきありがとうございます。
毎週(金)夜9時に定期配信しています!
~タイムスタンプ~
00:00 本日のハイライト
00:53 ご挨拶,本日のテーマ紹介
01:05 前回までの振り返り
01:18 今回の説明
02:02 実演デモ①完成形確認
02:35 実演デモ解説①作り方説明
03:30 前回までは【独立型】今回は【連動型】
03:51 実演デモ解説②起動時に行われる動作
08:42 実演デモ②確認
09:02 実演デモ解説③[Change]イベントについて
10:57 実演デモ③確認
11:16 実演デモ④セミナー名に応じた受講料と金額の変化の確認
11:30 実演デモ④解説
13:31 全てのデモ確認【連動型コンボボックス】
13:50 連動型コンボボックスに関しての補足
16:20 まとめ
16:44 Point説明
17:12 留意点説明
18:11 エンディング
[業務効率化チャンネルとは?]
Excel業務効率化を目的としたVBA活用に関する役立つ情報を配信
✅業務効率化ご相談(企業・法人の方はこちら)
www.cellnets.co.jp/lp/
1-1.ExcelVBA業務システム開発
1-2.はじめてのシステム導入アドバイス
1-3.現行Excel運用の無料診断
✅タケモ塾[ExcelVBA学習サイト]
www.cellnets.co.jp/takemojuku/
2-1.VBAスキルアップ支援
2-2.システム開発や設計アドバイス(入門)
2-3.既存マクロの改修アドバイス
◆解説した内容まとめ
↓ここから
◆変数定義
Dim S_Obj名 As String
'↓セミナー名の配列変数
Dim O_Dictionary連想配列 As Variant
Dim S_配列Key As String
Dim S_Key01 As String
Dim S_Key02 As String
Dim S_書込行 As Variant
◆UF起動時のCOMBO生成
'/ ★カテゴリ名 [親] を事前生成
cmbカテゴリ名.Clear
Set O_Dictionary連想配列 = CreateObject("Scripting.Dictionary")
For S_読込行 = 3 To P_99Fin行 'データ先頭から
S_Key01 = P_99Buf範囲(S_読込行, 2)
S_配列Key = S_Key01
If Not O_Dictionary連想配列.Exists(S_配列Key) Then '[未登録] なら、順次、連想配列に登録
O_Dictionary連想配列.Add S_配列Key, ""
cmbカテゴリ名.AddItem P_99Buf範囲(S_読込行, 2) & ":" & P_99Buf範囲(S_読込行, 3)
End If
Next S_読込行
cmbカテゴリ名.ListIndex = 0
Set O_Dictionary連想配列 = Nothing
'初期カーソル位置
Call カーソルSET_txt受注日
◆cmbカテゴリ名_Change
Private Sub cmbカテゴリ名_Change()
'まずは、子供をクリア!
cmbセミナー名.Clear
'一致した値だけを、コンボボックスに追加する
For S_読込行 = 3 To P_99Fin行
'先頭3桁で照合
If Mid(cmbカテゴリ名, 1, 3) = P_99Buf範囲(S_読込行, 2) Then
'コード+接続子+値
cmbセミナー名.AddItem P_99Buf範囲(S_読込行, 4) & ":" & P_99Buf範囲(S_読込行, 5)
End If
Next S_読込行
'先頭データを選択
cmbセミナー名.ListIndex = 0
End Sub

'★★★★★★★★★★★★★★★★★★★★★★★★★
Private Sub cmbセミナー名_Change()
'★★★★★★★★★★★★★★★★★★★★★★★★★
'要素を追加
For S_読込行 = 2 To P_99Fin行
'コードで照合
If Mid(cmbセミナー名, 1, 3) = P_99Buf範囲(S_読込行, 4) Then
'一致した値を取得したら、OUT
txt受講料 = P_99Buf範囲(S_読込行, 6): Exit For
Else
End If
Next S_読込行
Call M_金額算出
End Sub
'★★★★★★★★★★★★★★★★★★★★★★★★★
Private Sub M_金額算出()
'★★★★★★★★★★★★★★★★★★★★★★★★★
'Val(値)= 1,000 = 1
'★画面フィールドの値を数値に変換セット
S_受講料 = CLng(txt受講料)
S_申込人数 = CLng(txt申込人数)
S_金額 = S_受講料 * S_申込人数
txt金額 = S_金額
'★書式セット
Call UF99設定_03書式
End Sub
・留意
Changeイベントは、特に、不具合が発生しやすいので、注意。
例)Changeイベント内でのイベント
・まとめ
1、何故このテーマ?
「絞り込み選択」で避けられない処理の1つだから
2、連動型コンボって重要?
大>中>小分類の絞り込みは、頻度も高く、重要は高い
(POINT)
◆リスト選択肢は、プログラム・コーディング対応してはダメ!
 →値は変わるもの(拡張性&可読性)
◆カーソル位置も制御
↑ここまで
✅株式会社セルネッツ
www.cellnets.co.jp/
◆システム開発方針 ~ 可読性を重視 ~
セルネッツの事業は、Excel業務の効率化支援サービスです。
「ExcelVBA」は、そんな課題解決の手法のひとつであり、
プログラム開発方針では、「可読性(コードの読みやすさ)」を重視しています。
その理由は、お客様の実務に、3つの共通点があるためです。
1.システム開発に「改修」はつきもの(第三者改修)
2.VBAと基幹系データベースの直接データ連携は、ほぼ皆無
3.問題の本質は、Excel業務の運用方法にある
◆低コスト&高品質サービスを提供するために必要なこと
システム開発料金は、技術料もさることながら「発生工数(時間数)」ベースで積算されるもの。
そのため、工数低減はサービス向上のために必要不可欠となります。
高度なプログラミング技術に依存した場合、それに比例しコスト増を招いてしまいますが、シンプルに書かれたソースコードは、ベテランエンジニアにとっても解読が容易であり、この記述スキルこそ「価値の高い技術」と考えます。
さらに、ご依頼元のお客様が、日常的にExcelやVBAを駆使している背景から、「事務系VBA初心者」でも読みやすいコードを提供できるスキルが求められます。システム導入コストの低減を目指し、弊社は何より「可読性」を重視します。
◆動画をご覧いただきたい対象者
(1)はじめてシステム発注する方
右も左もわからない!システム導入で失敗したくない!
そんな方のご不安を解消するために必要なシステム導入の留意点などをご紹介
(2)「ひとりエクセルVBAプロジェクト」に取り組む方
社内では、独学でVBAを習得に取り組むものの、独学の限界に直面して困っている方。
「設計」、「品質保証」、「上流工程」、「デバッグ」、「テスト検証」について、
解説します
◆プロフィール
竹本 一道(たけもと かずみち)
株式会社セルネッツ 代表取締役
◆セルネッツ起業までの経歴
↓業務システム開発実績(開発言語)
ホテルニューオータニ(売掛買掛金管理システム)、
日本IBM(販売管理システム)、DCカード(会員管理システム)、
日本旅行(ツアー工程管理システム)、東京電力(図書管理システム)、ほか多数
「BASIC、COBOL(HITAC)、RPGIII(AS/400)、MAPPER、C#、ほか」
COBOL/RPG/MAPPER言語を中心に10年間にわたり汎用系業務システム開発に従事。
その後、ソフトウェアメーカーでのマーケティング業務や、 製造業での業務改善プロジェクト推進リーダーを経験。
基幹システムにおいて、わずかな修正が10万円!!との現実に驚きをかくせず、
Excelマクロ開発のメリットに着目し、「餅は餅屋」、得意分野を得意なツールに任せることで、
圧倒的コストパフォーマンスを得られた体験から、
2007年「業務効率化は最も身近なExcel業務から」をコンセプトにセルネッツを設立(杉並区)。
◆講演/セミナー
・はじめての業務システム導入(セミナ―)
 ~ 失敗から学ぶ!システム導入成功のコツ ~
・小さな会社の業務改善(講演)
 ~ 業務効率化は、最も身近なExcel 業務から ~
◆セルネッツ事業サービス内容
(1)ExcelVBAツール開発
(2)VBAインハウス支援(開発内製化サポート)
(3)VBAスキルアップ研修
最近は、システム導入セカンドオピニオンもやってます!
インハウスVBAとは、VBA開発を外注するのではなく自社内で行うことです。
主に5つの内容をご支援しております。
 1. VBA既存マクロ保守サポート
 2. VBA設計アドバイス
 3. VBA改善提案アドバイス
 4. VBA部分Module提供
 5. VBA添削チェック
◆小冊子プレゼント「システム開発には100万円も払いたくないという社長の教科書」
(1)製本版プレゼント応募フォーム
 www.cellnets.co.jp/present-ss01
(2)PDF版の資料請求フォーム
 www.cellnets.co.jp/request
 [1] 小冊子PDF版ダウンロード
 [2] VBA開発の価格リスト
 [3] 業務システム導入事例集
◆ご質問、ご要望など メールでのお問い合わせはこちら!
株式会社セルネッツ 「KZfaqチーム」
東京都杉並区高井戸東3-7-2 ピケビル3F
電話:03-5941-9130 (月~金/ 9:00 ~ 18:00)
Eメール: cn.ytube-comment@cellnets.co.jp

Пікірлер
Excelシステム開発 入力チェック重要性や種類について徹底解説
22:01
THEY made a RAINBOW M&M 🤩😳 LeoNata family #shorts
00:49
LeoNata Family
Рет қаралды 41 МЛН
Я нашел кто меня пранкует!
00:51
Аришнев
Рет қаралды 5 МЛН
LOVE LETTER - POPPY PLAYTIME CHAPTER 3 | GH'S ANIMATION
00:15
Double Stacked Pizza @Lionfield @ChefRush
00:33
albert_cancook
Рет қаралды 57 МЛН
VBA ユーザーフォーム コンボボックスの作成方法を解説
27:01
セルネッツ業務効率化
Рет қаралды 1,2 М.
【実演】VBAユーザーフォームの作成手順~入門編
33:06
セルネッツ業務効率化
Рет қаралды 3,3 М.
坐车一定要系上安全带#海贼王#路飞
0:26
路飞与唐舞桐
Рет қаралды 6 МЛН
Mobile phone 📱✋🚫😰
1:00
Okanutie
Рет қаралды 8 МЛН
¿Puedo conseguir chocolate MrBeast y PRIME?
0:20
McBang ASMR
Рет қаралды 10 МЛН
Очень ждал свою маму 💔
0:56
Awesome Cuts
Рет қаралды 7 МЛН