Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
手離れの良いExcel VBA / non-personalized-excel-vba
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tunemage
June 28, 2023
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
手離れの良いExcel VBA / non-personalized-excel-vba
tunemage
June 28, 2023
More Decks by tunemage
See All by tunemage
自社サービス開発企業のサポート業務改善 / Support department improvements for SaaS company
tunemage
1
130
IPO準備プロジェクトにエンジニアとして参加した話 / IPO preparation project
tunemage
1
190
『データモデリングでドメインを駆動する』で繋がる体験 / Drive domain with data modeling
tunemage
0
270
Vueによる自作簡易DSL / Simple DSL with Vue
tunemage
1
260
本を年100冊読むためにしている事 / my-way-to-read-100-books-a-year
tunemage
1
840
システム監査についての学びと今後の課題 / learning-about-system-auditing
tunemage
1
1.7k
システム内製の原則 / principles-of-in-house-system-development
tunemage
3
2.3k
業務システムの概要とその選択肢_公開用_.pdf/Overview of business system
tunemage
3
1.9k
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
530
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
990
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
600
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
940
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Facilitating Awesome Meetings
lara
57
7.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
We Have a Design System, Now What?
morganepeng
55
8.3k
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の書籍