VBAの話。最近「結合してあるセル」の結合セルの幅を求めたい、ということがありまして。
以前、結合セルのセル範囲はMergeAreaプロパティで調べることができるというのは調べて分かっていたのですが、ただこの場合、MergeAreaプロパティで分かるのは
「$a$1:$d$2」のようにあくまでセル範囲だから、純粋に結合セルの縦幅、横幅が分かるわけじゃないんですよね。
でもVBAのヘルプを見てみても全然分からないし、もちろん自分の頭の中だけじゃ想像もつかない。
というわけで結局ネットで調べることに(^^;。そしたら↓の①と②のようにたった1行で求めることができると判明。…わたしのVBAスキルもまだまだですわなorz。
というよりも、Rows.Countプロパティ、Columns.Countプロパティのことをきちんと理解していれば、そう難しく考えることもなかった、とorz。
例:セルa1からd2の範囲で結合したセルの幅を求める場合
①結合セルの縦幅を求める
Range("a1").MergeArea.Rows.Count
②結合セルの横幅を求める
Range("a1").MergeArea.Columns.Count
それにしてもホント便利な世の中になったもんですわ。分からないこともちょっとネットで調べたら、大抵は「答え、もしくは答えのようなもの」に辿り着くのだから…。
わたしが大卒新人で会社に入った頃は、プログラムを組んでいて分からないことがあったら、社内にある本棚からプログラムの解説本のようなものを探してきて、
自身が分からないことに対して、その解説本の中をアテもなく探していって-。…と、今思うとすっげー非効率なやり方で問題を解決しようとしていたもんだよなと。
もっとも、その当時でももっと効率的な問題の解決方法があったのかもしれないですが。
以前、結合セルのセル範囲はMergeAreaプロパティで調べることができるというのは調べて分かっていたのですが、ただこの場合、MergeAreaプロパティで分かるのは
「$a$1:$d$2」のようにあくまでセル範囲だから、純粋に結合セルの縦幅、横幅が分かるわけじゃないんですよね。
でもVBAのヘルプを見てみても全然分からないし、もちろん自分の頭の中だけじゃ想像もつかない。
というわけで結局ネットで調べることに(^^;。そしたら↓の①と②のようにたった1行で求めることができると判明。…わたしのVBAスキルもまだまだですわなorz。
というよりも、Rows.Countプロパティ、Columns.Countプロパティのことをきちんと理解していれば、そう難しく考えることもなかった、とorz。
例:セルa1からd2の範囲で結合したセルの幅を求める場合
①結合セルの縦幅を求める
Range("a1").MergeArea.Rows.Count
②結合セルの横幅を求める
Range("a1").MergeArea.Columns.Count
それにしてもホント便利な世の中になったもんですわ。分からないこともちょっとネットで調べたら、大抵は「答え、もしくは答えのようなもの」に辿り着くのだから…。
わたしが大卒新人で会社に入った頃は、プログラムを組んでいて分からないことがあったら、社内にある本棚からプログラムの解説本のようなものを探してきて、
自身が分からないことに対して、その解説本の中をアテもなく探していって-。…と、今思うとすっげー非効率なやり方で問題を解決しようとしていたもんだよなと。
もっとも、その当時でももっと効率的な問題の解決方法があったのかもしれないですが。