Не определите. Если в тексте стоит тире, перенос будет там. К тому же в зависимости от шрифта, его размера, переносы будут ставится по-разному. Советую использовать Courier New или Courier, или подобный шрифт. Тогда вместимость числа букв в строке ячейки будет одинаковая - тут и будут переносы, если нет тире.
Вы решали подобную задачу и не нашли решения, или просто утверждаете? Excel же каким-то образом понимает, где ставить перенос. Я не предлагаю повторить алгоритм Excel'я самому, но нерешаемых задач не бывает. Шрифты, предложенные Вами, использовать нельзя.
Справедливо. А у вас нет желания пояснить - для чего все это? И зачем в примере текст в объединенной ячейке, что является одним из злейших зол в XL - электронной таблице, а не издательской системе? Набранный текст в XL не пробовали проанализировать в ворде с отображением всех, в том числе, и непечатаемых знаков?..
Z написал: А у вас нет желания пояснить - для чего все это?
Поясняю. Есть форма документа, определенная вышестоящими организациями и потому неизменная. Нельзя менять размеры ячеек, их количество, вообще что-либо. Можно только вносить в нее данные. На форме есть три отдельные несмежные строки, в которые надо внести текст. Каждый раз вручную вносить данные и подбирать количество символов в каждой из строк слишком муторно, поэтому есть желание автоматизировать это дело. То есть, закинуть весь текст в первую строку, если XL сделает перенос, то перенести часть текста во вторую и так далее. Для наглядности приложил файл.
Предполагал делать это через служебный лист, на котором пользователь в объединенную ячейку внесет текст, а макросом потом его разбить по строкам на исходной форме.