Как отформатировать многострочную ячейку чисел в Excel?

Дана ячейка Excel с несколькими строками (перенос текста).

E.g.

5501.700
640.8690
1081.45600
41.100

Я хочу отформатировать все числа (в этой единственной ячейке), чтобы они содержали 2 десятичных знака и разделители тысяч. Каковы мои варианты выполнения этой задачи?


person Alec    schedule 06.02.2012    source источник


Ответы (1)


Я думаю, что единственный способ — макрос; прочитать значение, разделить каждую строку, отформатировать, присоединиться.

ALT+F11, вставить -> модуль и добавить;

Public Function FORMATLINES(cell As Range) As String
Dim data() As String, i As Long
data = Split(cell.Text, vbLf)
For i = 0 To UBound(data)
    If IsNumeric(data(i)) Then data(i) = FormatNumber(data(i), 2, vbTrue, vbFalse, vbTrue)
Next
FORMATLINES = Join(data, vbLf)
End Function

Для

=FORMATLINES(A1)

Дает мне;

5,501.70
640.87
1,081.46
41.10
person Alex K.    schedule 06.02.2012
comment
Звучит хорошо, для новой ячейки я должен был также установить параметр Выравнивание для Обтекание текстом равным true. - person Alec; 06.02.2012