パラメタで渡されたセルに見切れが発生しているか判断する関数、TestIsTextClipped()だ。
WindowsAPI バリバリ呼んでるぞ。
VBAのつぼ
50%程度、gemini先生に書かせてみた。
都度、バグを指摘すれば、改善したコードを書いてくれる、、、が、こちらが気が付かないと正しいコードを書いてくれない。
現時点では、自分の能力以上のコードは作ってくれない。
しかし、優秀で仕事の早い後輩程度の助けにはなる。
セル見切れは以下の考慮の元作成したので、判断が正確じゃない場合がある。
・セル内一部の文字だけのフォント・フォントサイズの変更を考慮すると処理が重くなりすぎるので考慮していない
セル見切れは以下の考慮の元作成したので、判断が正確じゃない場合がある。
・セル内一部の文字だけのフォント・フォントサイズの変更を考慮すると処理が重くなりすぎるので考慮していない
・セルに「縮小して表示」が設定されている場合、高さの見切れは考慮してない。表示上のフォントサイズを取得して、高さの再計算をする必要がある。
・セルに「折り返して表示」が設定されている場合、折り返しの正確なルールを再現できなかったので、高さの見切れに間違う場合がある。英語、日本語の混合ルールは複雑。
・セルの横位置が標準以外の場合、幅見切れを正確に認識できていない。
・セルの横位置が標準の場合、セル標準横余白が不明のため、余白は考慮していない。
・セルが結合されている場合、結合範囲で見切れや折り返しを判断している。
しかし、仕様書等、標準の書式で書かれている文書なら、ほぼ正確に見切れ判断できるだろう。
単体では用途が狭い関数だが、こちらで公開している検索一覧作成機能に追加する予定だ。
0 件のコメント:
コメントを投稿