![Как определить реальную длину/видимость/переполнение текста?](https://rvso.com/image/1520717/%D0%9A%D0%B0%D0%BA%20%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B8%D1%82%D1%8C%20%D1%80%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D1%83%D1%8E%20%D0%B4%D0%BB%D0%B8%D0%BD%D1%83%2F%D0%B2%D0%B8%D0%B4%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C%2F%D0%BF%D0%B5%D1%80%D0%B5%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%B0%3F.png)
Для обеспечения качества/целостности данных я должен убедиться, что все комментарии в завещании column C
будут видны при печати: нет скрытого выходящего за пределы текста текста. Ширина, высота и шрифт фиксированы, а перенос слов активирован.
Пока что я установил проверку с максимальной длиной текста (100 символов в моем случае). Стандартные предложения и Lorem ipsum вписываются в ячейку нормально, но другой пользователь обнаружил, что его 100 символов частично скрыты.
Действительно, 100 "W" не влезают - только около 30. Но максимальная длина текста в 30 символов слишком коротка.
Как определить реальную длину текста, его видимость или выход за его пределы?
Есть еще идеи?
Редактировать
- Шрифт Monotype работает отлично. Но так как комментарий занимает гораздо больше места, я предпочел второй вариант
Я использовал трюк Жана-Франсуа Корбетта вКак определить значения, которые не помещаются в ячейки Excel, с помощью VBA?: проверка
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 страницы. Максимальная длина страницы не имеет значения... оставьте поле пустым или укажите большое, например 999, в зависимости от версии Excel.
Это означает, что ваша электронная таблица может не поместиться на одном экране... вашим пользователям, возможно, придется немного прокрутить вправо... и в распечатке может оказаться немного больше свободного места, чем вам хотелось бы, но если печать является вашим приоритетом (а так оно, судя по всему, и есть), это должно сработать в любом случае.