エクセル雑感
「マクロの登録」で登録できないプロシージャーは?

ExcelマクロVBAとエクセル関数についての私的雑感
最終更新日:2022-06-23

「マクロの登録」で登録できないプロシージャーは?


ツイッターで出題した問題です。


マクロはボタン等に「マクロの登録」で登録して使う場合が多いです。
どのようなプロシージャーかによって「マクロの登録」での登録方法を違ってきます。
このやり方を知っているかどうかを問うVBA問題です。


出題ツイート

【VBA問題】
以下うち、ボタンにマクロ登録できないプロシージャーを選んでください。
Privateプロシージャー
・Privateプロシージャー
・Optionalではない引数のあるSub
・引数のあるFunction
・にゃんともいえ ない

Excel VBA問題
https://twitter.com/yamaoka_ss/status/1539608064365449216


解説ツイート

かなり拮抗した結果になりました。
少し想定外ではありました。
まず、
Privateモジュールをボタンに登録することは簡単です。
「マクロの登録」のダイアログに一覧表示されていないだけなので、マクロ名(M):に直接プロシージャー名を入力するだけです。


同一プロシージャー名が複数のモジュールに存在する場合は、モジュール名.を付けて、
モジュール名.プロシージャー名
このように指定します。
Privateなら全て手入力になります。
Functionは戻り値を使わなくても構わないのでSubと同じです。


では引数がある場合の登録方法です。
'モジュール名.プロシージャー名 引数1,引数2,…'
(モジュール名.は必要なければ省略可能)
このように'(シングルクォート)で囲みます。
引数は半角空白を空けた後に,カンマ区切りのリストで指定します。


ということで、
・Privateプロシージャー
・Optionalではない引数のあるSub
・引数のあるFunction
この3つはどれも登録できますので、
正解は、
「にゃんともいえ ない」
「ない」の手前に半角空白を入れといたのですが・・・


Excel VBA問題
https://twitter.com/yamaoka_ss/status/1539934788340985856




同じテーマ「ツイッター出題&回答」の記事

数値変数の値を別の変数を使わずに入れ替える

ツイッターで出したエクセルVBAのお題です。数値が入っている3つの変数を、他の変数を使わずに値を入れ替えるという問題です。問題を出したツイート 【VBA問題】 変数a,b,cに整数値が入っています。これをa>b>cとなるように値を入れ替えてください。
Rangeオブジェクトを受け取り"行数,列数"で埋める
ツイッターで出したエクセルVBAのお題です。Rangeオブジェクトを受け取り、"行数,列数"の値(数式ではなく値)で埋めるVBAを書く問題です。問題を出したツイート 【VBAお題】 Rangeオブジェクトを受け取り、添付のように"行数,列数"の値(数式ではなく値)で埋めてくだ…
数式の関数の使用回数、関数名を配列で返す
ツイッターで出したエクセルVBAのお題です。セルに入っている計算式に使われている関数(ユーザー定義含む)を数えてみましょう、というお題になります。問題を出したツイート 【VBAお題】セルに計算式が入っています。
キーボード操作だけで非表示列を表示
ツイッターで出したエクセル基本操作のお題です。マウスを使わずにキーボード操作だけで非表示列を表示させる手順を示してください、というお題になります。問題を出したツイート 【エクセル基本操作問題】 A列とC列が非表示になっています。
日付型と通貨型のValueとValue2について
ツイッターでVBAに関する問題を出しました。問題としてはValueとValue2について問うもので、日付型と通貨型が問題の焦点になります。https://twitter.com/yamaoka_ss/status/1408259798357794817 VBA問題の出題ツイート 【VBA問題】 Rangeに対して、
小文字"abc"を大文字"ABC"に変換する方法
ツイッターで出した「VBA問題」です。小文字"abc"を大文字"ABC"に変換する方法を可能な限り列挙してください。という問題です。。出題ツイート https://twitter.com/yamaoka_ss/status/1425799283303882758 「VBA問題…
連番を折り返して出力
ツイッターで出題した問題です。1~100の連番を行ごとに折り返して出力します。1行目の1~10は右に向かって、2行目の11~20は左に向かって、3行目はふたたび左から… 出題ツイート 「エクセル頭の体操」数値基礎編 1~100までの数値を添付のように折り返して作成してください。
4,9を使わない連番作成
ツイッターで出題した問題です。日本では、部屋番号等の番号を振る時に4,9を使わない連番にする事が多々あります。この4,9を使わない連番をシートで作成するツイッター出題です。出題ツイート 「エクセル頭の体操」暇人専用 よくある問題ですが、4,9を使わない連番作成 A1に1をいれてA2以降に、2,3,5,
コメントから特定形式の年月を取り出す
ツイッターで出題した問題です。コメントから特定形式「(yyyy年mm月)」の年月だけを取り出す問題です。日付として認識できるデータのみを取り出します。ただし、複雑な入力に対応するのはかなり難しくなります。
オブジェクトのByRef、ByVal、Variant
ツイッターで出題した問題です。オブジェクトを引数にした場合の、ByRef、ByValの違いと、仮引数にVariantを指定した場合の動作違いを問う問題です。出題ツイート 【VBA問題】 Submain() Range("A1")=1 DimaAsRange:Seta=Range("A1…
「マクロの登録」で登録できないプロシージャーは?


新着記事NEW ・・・新着記事一覧を見る

「マクロの登録」で登録できないプロシージャーは?|エクセル雑感(2022-06-23)
オブジェクトのByRef、ByVal、Variant|エクセル雑感(2022-06-22)
コメントから特定形式の年月を取り出す|エクセル雑感(2022-06-19)
4,9を使わない連番作成|エクセル雑感(2022-06-17)
連番を折り返して出力|エクセル雑感(2022-06-16)
VBAの基礎・基本の要約|VBA入門(2022-06-14)
ピッボットテーブルって便利だよね|還暦のVBA(2021-10-18)
還暦のVBA:VBAまでたどりつけるか… (2021-09-29)
VLOOKUPを使うことを基本としてシートを設計すべきか|エクセル雑感(2021-08-17)
コンピューターはブラックボックスで良い|エクセル雑感(2021-08-14)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.Excelショートカットキー一覧|Excelリファレンス
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.マクロって何?VBAって何?|VBA入門
8.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
9.並べ替え(Sort)|VBA入門
10.エクセルVBAでのシート指定方法|VBA技術解説




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ