概要
今回は「実装出来たら便利!」って問題
第3回までより難易度をぐっと下げてみました。
↓課題内容
中級者向けVBA課題 No.4
— いき As Variant (@aero_iki) 2023年7月16日
「動画のような入力システムを構築しなさい。各ボタンに登録してあるマクロは同じものとします。」#VBA実装術 #SoftexCelwearhttps://t.co/lRw75I7Ung pic.twitter.com/ddZIoYyAPT
この実装が出来れば、キーボード入力やドロップダウンリストからの入力よりもさらに効率的に作業ができるようになる場面が出てきます。
実装のポイント
下記項目をクリアすれば同じようなものが作れます。
詳細はググるなり、今時なら生成AIに聞けば答えが出てくるので詳細の解説は行いません。
- シート上のコマンドボタンを押すと、そのコマンドボタンのテキスト文字が選択セルへ入力される(コマンドボタンのプロパティから情報取得)
- コマンドボタンに登録されるマクロは同じものとする。
- 押されたコマンドボタンをマクロ内で特定が必要(Application.Callerを利用)
- 入力される範囲は限定されるようにする(Intersect関数を利用)
- 複数セルが選択されている場合はそのセル範囲全体に値入力(For~EachもしくはRangeオブジェクトのValueプロパティ)
コード
休、有、朝、昼、夜に登録されているマクロのコードのリンクです。
自分用の汎用プロシージャを流用しているため処理は冗長になっておりますが、実際に実装時に記述したのは「S_ボタンから入力」「Get__入力範囲」のみです。
頂いた回答
今回も回答をいただきました。毎度ありがとうございます!
タイマーストップ:約13分。罫線の設定の短縮技を知らな過ぎて時間がかかる。#VBA実装術 #SoftexCelwear https://t.co/OGcQBeYBFa pic.twitter.com/0prnF0VpdG
— たーぼー(インコ) (@fenblen_puyo) 2023年7月16日
できたー!特定の選択範囲内に文字を出力するアイデア最高すぎる!
— 人妻チー牛 (@kota2hiz) 2023年7月17日
それと、罫線マクロは今後絶対使っていこう…超便利😌 https://t.co/YHKBNw7ruK pic.twitter.com/WMiasoMEQD
遅ればせながらやりました!
— のるあ_遊VBA (@c2f9e84acc3b446) 2023年7月17日
プロシージャの中身は5行ぐらいで書ける内容ですね#VBA https://t.co/AfsoR1kZnG pic.twitter.com/ekXOxK5WHH
前回課題
次回課題
PR
ExcelVBAでのツール開発を承っております。(対応実績350件以上 2023.8月)
お気軽にご相談ください。