Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
手離れの良いExcel VBA / non-personalized-excel-vba
Search
tunemage
June 28, 2023
1
110
手離れの良いExcel VBA / non-personalized-excel-vba
tunemage
June 28, 2023
Tweet
Share
More Decks by tunemage
See All by tunemage
自社サービス開発企業のサポート業務改善 / Support department improvements for SaaS company
tunemage
1
62
IPO準備プロジェクトにエンジニアとして参加した話 / IPO preparation project
tunemage
1
140
『データモデリングでドメインを駆動する』で繋がる体験 / Drive domain with data modeling
tunemage
0
160
Vueによる自作簡易DSL / Simple DSL with Vue
tunemage
1
160
本を年100冊読むためにしている事 / my-way-to-read-100-books-a-year
tunemage
1
770
システム監査についての学びと今後の課題 / learning-about-system-auditing
tunemage
1
1.6k
システム内製の原則 / principles-of-in-house-system-development
tunemage
3
2.2k
業務システムの概要とその選択肢_公開用_.pdf/Overview of business system
tunemage
2
1.3k
Featured
See All Featured
BBQ
matthewcrist
88
9.6k
Music & Morning Musume
bryan
47
6.5k
Faster Mobile Websites
deanohume
307
31k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Building Adaptive Systems
keathley
41
2.5k
Thoughts on Productivity
jonyablonski
69
4.6k
Designing Experiences People Love
moore
142
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Bash Introduction
62gerente
613
210k
Embracing the Ebb and Flow
colly
85
4.7k
Transcript
手離れの良いExcel VBA @tunemage
自己紹介 • つねまげ(@tunemage) • 現職、SaaSベンダー勤務(SRE ->ユーザーサポート) • 主業務の傍らkintoneやPowerAutomateも触る • 今でも現役の社内SEと言い張ってる
• 前職、製造業企業に勤務( 情報システム) • 同僚の休職により一時「ひとり情シス」状態に • 主業務の合間に、経理部門や事業部門の依頼でExcel VBA開発 • 販売管理システム開発・IPOプロジェクト・ セキュリティ・AD管理・各種SaaS管理・PC等の 発注・購買etc • それ以前(SE/プログラマー) • ERP開発・ 教育システム開発・スマホアプリetc • フリーランスも少し
【Web版補足】 情シスの主業務の傍ら、経理や事業部門の依 頼でVBAを開発してきました。手離れの良い (属人化しにくい)VBAの設計についてお話 します。そこで学んだ個人的知見を共有しま す ※LT時は口頭で話した内容です
まず結論。手離れの良いVBAは(私見) • ユーザーの自由度は極力広く • ソースコードは極力薄く →ユーザーが能動的に判断できる設計
例1. VBA以外の方法も検討 • 色付けは条件付き書式に • 集計はピボットテーブルに • 単にセル参照だけで事足りる場合も • 基幹システムの機能でできないか?
→「マクロで」と依頼されても、先入観を持 たず仕様検討
例2. パラメータや変換表はシートに持つ →可変的な要素を見極めて、ユーザー自身が メンテしやすいように
例3. Excelシートは業務に寄せる • 例えば、原価計算なら原価計算表 • 勤怠業務なら勤怠表 • ユーザーが目検で検算できるように • 開発者もユーザー業務を理解して
→最悪、トラブル時は手計算に切り替えられ るように
例4. セルを直接更新しない • 元シートのセル値を直接更新しない • 処理の結果は別シート/別ファイルで出力 • 処理過程もシートに出力する →冪等性を考慮した設計で、ユーザーも開発 者も楽になる
まとめ • ユーザーの自由度を広く • ソースコードは極力薄く →これでユーザーとのコミュニケーションも スムーズに 皆さんのご意見もお聞かせください
【おまけ】おすすめ書籍 • パーフェクト Excel VBA(高橋 宣成 ) →Excel VBAのオブジェクトや文法について体系的に学ぶには本書が 最高
• 会計ソフトのすき間を埋める 経理のExcel仕事術(羽毛田 睦土 ) →経理業務のユースケースが学べる • いちばんやさしいPowerPoint VBAの教本(伊藤潔人 ) →数少ない、パワポVBAの書籍