Blog of Khlebalin Dmitriy

(Дорогу осилит идущий…)

Особенности Excel.

На днях столкнулся с глюком (или может особенностью) в Excel, при попытке ввести номер счета с цифрами на конце  в конце оставались только нули а цифры прорадают, соответственно номер счета сразу становится неверным

Но нас это не устраивает, в конце счета есть цифры но ексель их не показывает, манипуляции с форматом ячейки результатов не принесут, можно и не стараться

Проблема решается следующим образом выбираем формат ячейки «общий» ставим апостроф перед счетом, далее вводим счет (он отображается с апострофом) далее преобразуем ячейку в текстовый формат

И удаляем апостроф

Проблема решена.

Есть еще один вариант решения данной проблемы, но это уже для извращенцев:

Но более правильно все же работать с Экселем через интерфейсы экспортируемые юнитом ExcelXP.pas

uses ExcelXP, OfficeXP, ActiveX; … type TForm1 = class(TForm)      ExcelApplication1: TExcelApplication;      ExcelWorksheet1: TExcelWorksheet; … begin ExcelApplication1.Connect;   …   ExcelWorksheet1.ConnectTo(ExcelApplication1.ActiveWorkbook.ActiveSheet as _Worksheet);   …     // вот так   ExcelWorksheet1.Cells.Item[i,7].Value := »» + ACC {‘40702810500000000385’};   // или так   ExcelWorksheet1.Cells.Item[i,7].Text := »» + ACC {‘40702810500000000385’};   // а еще лучше явно указать формат данных   ExcelWorksheet1.Cells.Item[i,7].NumberFormat := ‘@’;   ExcelWorksheet1.Cells.Item[i,7].Value := ACC {‘40702810500000000385’};   …   ExcelApplication1.Visible[0] := true;   ExcelWorksheet1.Disconnect;   ExcelApplication1.Disconnect;   end;

Всем удачи!

 

03.03.2011 Posted by | ms office 2003/2007/2010/2013/365 | 2 комментария