стоит задача - конвертировать текстовый файл (нечто вроде БД) в Excel и выполнить кое-какие расчеты. Во всех приложения, кроме изделий от БГ разделителем десятичных разрядов является точка. В микрософте считают, что - запятая..
Короче, есть столбtц чисел в текстовом виде, нужно преобразовать 1.1 -> 1,10 40 -> 40,00 0.07 -> 0,07 .. .. и т.д. Записываю макрос (выделение, замена точки на запятую, преобразование в число). Вручную все работает. А вот записанный макрос:
Columns("G:H").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.NumberFormat = "0.00"
работает черт знает как. Все числа >1 умножаются на 100. Все < 1 остаются в текстовом виде.
Хотя в Office XP уже предусмотрено применение разделителей, кроме запятой, но в 2000-м этого нет. А глюк присутствует во всех версиях.
Сообщение отредактировал Fluk - Пятница, 10 Июня 2005, 7:58
|