2017年2月21日火曜日

[エクセルVBAメモ]特定の範囲のコマンドボタンのみを削除する方法

ググって探してみたが、期待通りの方法が書かれた解説サイトはなかなか見つからなかった。シート上の「コマンドボタンを全削除」とか「ボタンの名前を指定して削除」は見つかる。だが、ボタンを全部削除されては困るし、特定のボタンの名前を全て削除されるのも大変困る。筆者としては「特定のセル範囲にあるコマンドボタンを全削除」という事を実現したいのだが。

キーワードを何度か変えて粘り強く探してみると、やっと近いものがヒットした(選択したセル範囲に含まれる図形を削除するExcelマクロ)。

上記リンク先にあるコードの図形部分をコマンドボタンに置き換えるだけでほぼ実現出来た。ざっくり言うと

1.削除したいコマンドボタンが含まれるセル範囲を選択状態にする(Range("●:●").select等)
                                   ↓
2.For Each でActiveSheetの図形を一つずつ調べて"選択されているセル範囲と重なっていた場合"にのみコマンドボタンを削除

というなんとも回りくどいやり方で実現した。「こういう方法はそれなりにニーズあるだろうから最初からそういうメソッドを用意しろよMS」とちょっと文句を言いたくなったが、とりあえず実現方法が全く無くてお手上げよりもマシなので良しとしよう。いや、もし実現出来なくても抜本的に仕様を変更してシート上にボタンを直接貼り付けるのではなくユーザーフォーム上で操作するようにする等、工夫すれば他にも色々やり方はあるだろう。「目的は一つでもその実現手段は複数ある」というやつだ。だがそうなると結局他の部分も作り直しになってバグ再発とか新たなバグ発生になる可能性がありテスト工程も含めると工程が増えて完成予定がかなりずれ込むはず。結果論かもしれないが、やはり実現できそうにないと早々に見切りをつけるよりもある程度粘って試行錯誤した方がいいかもしれない。

2017年2月4日土曜日

ゴルフ場が女性の正会員を認めないのは女性差別なのか

女性正会員認めず 五輪ゴルフ競技会場が対応検討
http://www3.nhk.or.jp/news/html/20170202/k10010861441000.html

急に女性差別批判…埼玉の五輪ゴルフ会場に逆風 正会員が男性限定で
http://headlines.yahoo.co.jp/hl?a=20170201-00010002-saitama-l11

2020年の東京オリンピックのゴルフの競技会場で女性の正会員を認めていないことに対してIOC(国際オリンピック委員会)が「オリンピック憲章などに照らし男女平等であるべき」と改善を求めたり、小池都知事が「女性会員を認めるべきだ」と発言する等して話題になっているようだ。

IOCは男女平等であるべきと言っているが、そもそもボクシングも女性種目が追加される流れなのに五輪の種目で新体操と競泳シンクロは女性のみの種目で男性には無いのだが、どういう経緯でそうなったのか。(女子レスリングでフリースタイルとグレコローマンの区別が無いのを考慮したとしても)バランスを欠いておりその点は五輪憲章にそぐわないのではないのかと思えた。

それはそうとして、ハフィントンポストの記事にあるように毎年マスターズが開催されるオーガスタ、ゴルフ発祥の地であるセントアンドリューズというゴルフの2大聖地をそれぞれ根拠とするゴルフクラブが最近になって女性会員を認める等、最近の潮流は女性会員を受け入れる流れのようだ。しかし、同記事にあるように世界最古のゴルフクラブであるミュアフィールドは会員投票で女性会員受け入れを否決する等、例外もある※1(これにより全英オープンのコースから外されたとのこと)。五輪憲章の理念からして会場にふさわしくないのは確かだが、女人禁制のミュアフィールドが全英オープン開催地から外されたように単に五輪会場から外せば良いだけのことではないだろうか。(一応ゴルフ会場がある県の知事ではないものの)都知事の発言は「なるべく営業の自由は保証されるべき」という観点から考えるとやや違和感を感じる。

「営業の自由」をどこまで認めるべきかは難しい問題だと思う。「女性差別」の逆の例としては映画等のレディースデーはあるのにメンズデーがないのは「逆差別」なのではないか、とよく言われる。やれ女性客の口コミによって評判が広がる効果があるだの、やれ女性客の方が価格弾力性が高いから実際に売上増に繋がるだのもっともらしい理由は語られているが、実際にどれだけ売上増に繋がったかというエビデンスは一度も目にした事がない(もしご存知の方いたらできればコメント欄にご教示頂ければ有り難い)。商売をやる上での相応の合理的理由があれば基本的に市場に任せれば良いと思うが、レディースデーのみ設けるのは根拠に乏しく「逆差別」という指摘も一理あるように感じる。他の例としても、そもそも”スーツにネクタイ”だって単に商慣習として根付いているだけであまり合理的服装とは思えない(この点は文化人類学の分野でも指摘されている)。クールビズと言う施策が無ければ地球温暖化の問題のみならず、冷房代が余計かかるので企業経営としてもコスト増になるのに、国が音頭を取らなければ真夏でも極めて不合理な服装でビジネスに従事し続けていたわけで、労働者保護やある種の商慣習は公的機関による是正措置が必要になってくる場合はあるだろう。※2

とりあえず関連ワードで検索してみると違った角度からこの問題を捉えている興味深い記事を見つけた。主夫ブロガーのヨスさんの記事で「レディースデーの根底にあるものは実は女性差別」と言うような指摘をしている。確かに導入された当初はそういう面もあったかもしれないが、男女雇用機会均等法が施行して相当の時間が経た現在では、むしろ結果的に男性差別としての機能が強まってしまっているのではないか。

ただ個人的には映画のレディースデーよりも、婚活パーティーや合コンでの男女別の料金設定には大いに不満を感じている。なぜ一部のパーティーは不当に男性料金の方が高いのか全く納得できない。(相席居酒屋の中には女性の飲み食いは無料というお店があるが、ビジネスモデルとして筋が通っているのであれば納得できる。だが個人的に街コンの中には納得できない価格設定のものもある。)真の男女平等を目指す時に「男は女に奢るべき」や「婚約指輪は男が買うべき」というマナーや礼儀作法はどうなるのだろうか。男ばかりが責任を負わされ、金をかけねばならない状態のように感じるが、どこか別の部分(例えば女は代わりに妊娠出産や家事に負担を負う)で釣り合いは取れているのだろうか?国際的なジェンダー・ギャップ指数では国会議員に占める女性の比率が低い等で日本の女性の地位は低いとされているが、国際的な幸福度では日本の場合、男性は女性よりも幸福度が低いが、その男女差は世界トップレベルという調査結果もある。それは男ばかりが金を払い責任を負わされていることの証左ではないのか。これを機会に真の「男女平等」を目指すなら、レディースデーや婚活パーティーの男女別料金設定も是非議論してもらい、是正すべきはするという処置を取ってもらいたいものだ。

※1 世界最古のゴルフクラブの例のように女性会員受け入れを拒否したクラブもあるが、女性会員を受け入れたクラブの例のみを取り上げて、この例をスルーしたメディアも一部に存在したことを確認した(筆者に聞き漏らしが無ければNHKラジオがまさにそうである)。意図的かどうかは判断がつかないが、これが例のマスコミによる「報道しない自由」というやつだろうか?(一部の知識人も自分の主張に合わない例は意図的に無視するので同じ手口である。) 片腹痛い話だ。

※2 他にも就職活動生が着るリクルートスーツは黒でなければいけないと言う事が当然のビジネスマナーとしていつの間にか広まっているようだが、昔はそうでは無かった。このマナーもどうなのかという思いはある。