テキストの実際の長さ/可視性/オーバーフローを検出するにはどうすればいいですか?

テキストの実際の長さ/可視性/オーバーフローを検出するにはどうすればいいですか?

品質とデータの整合性を保つために、すべてのコメントがcolumn C印刷時に表示されるようにする必要があります。隠れたオーバーフローしたテキストは表示されません。幅、高さ、フォントは固定され、ワー​​ドラップが有効になっています。

これまでのところ、私は最大テキスト長 (私の場合は 100 文字) で検証を設定しました。標準的な文章や Lorem ipsum はセルに問題なく収まりますが、別のユーザーは 100 文字が部分的に隠れていることに気付きました。

確かに、「W」は 100 個は収まりません。約 30 個しかありません。しかし、最大 30 文字のテキスト長は短すぎます。

テキストの実際の長さや可視性、オーバーフローの有無をどのように検出できますか?

他に何かアイデアはありますか?

編集

  • Monotypeフォントは完璧に機能します。しかし、コメントははるかに多くのスペースを占めるので、2番目のオプションを好みました。
  • 私はジャン=フランソワ・コルベットのトリックをVBA を使用して、Excel セルに収まらない値を検出するにはどうすればよいでしょうか?:autofit行または列を拡大するかどうかをチェックし、その後、初期サイズを復元します。この方法では、最大 3 行のコメントが受け入れられます。改行Alt + Enter も考慮されます。

    'Check previous cells
    If Cell.Column = 10 Then 'check the comments column
         Hauteur_ligne = Cell.RowHeight
         Cell.EntireRow.AutoFit  
         If Cell.RowHeight > Hauteur_ligne Then
            Cell.Interior.ThemeColor = xlThemeColorAccent2 'Red for rejected comment
            Saisie_Valide = False  'Validity flag
        Else
             Cell.Interior.ThemeColor = xlThemeColorAccent3  'Green for accepted comment
        End If
    
        Cell.RowHeight = Hauteur_ligne
    'end of sub, alert message 
    

どうもありがとう !

答え1

完璧な答えはないと思いますが、回避策としては次のようなものがあるかもしれません。

  • 検証を100文字に設定
  • コメント欄の幅を、使用しているフォントで見つかる最も幅の広い文字の 100 文字に合うように設定します。W 文字かもしれません... あるいは他の文字かもしれません - 試行錯誤があなたの味方です
  • 最大印刷ページ幅を最大 1 ページに設定します。最大ページ長は関係ありません。Excel のバージョンに応じて、空白のままにするか、999 などの大きな値に設定します。

つまり、スプレッドシートが 1 つの画面に収まらない可能性があり、ユーザーは少し右にスクロールする必要がある可能性があり、印刷時に余白が少し多くなる可能性がありますが、印刷が優先事項である場合 (そう思われるとおり)、これは常に機能するはずです。

関連情報