Раньше мы использовали BIFF для экспорта сетки в excel, но есть ограничение строк, чтобы мы подумали о переходе в формат OOXML. Есть ли какой-либо источник выборки для начала работы. Пожалуйста, помогите мне в этом, поскольку я новичок в Delphi.Экспорт сетки в excel + OOXML
ответ
Во-первых, я бы просто использовал встроенный экспорт DevExpress в Excel. Это сэкономит вам дней работы:
cxGridExportLink.pas: ExportGridToExcel [не использует OOXML] или [ExportGridToXLSX ли использовать OOXML через собственный DX класса XML-документа среди других вещей]
Однако, если вы должны использовать DIY OpenXML подход, то лучшие места для начала являются:
- http://ericwhite.com/blog/category/open-xml/spreadsheetml/
- http://openxmlviewer.codeplex.com/
- http://powertools.codeplex.com/
Это все ссылки на C#, но это не так сложно перевести, главным образом потому, что в любом случае вы являетесь XML. Я проделал некоторую работу по чтению и записи в Word и Excel с использованием материалов OpenXML, и единственным способом узнать это было, открыв существующий документ с помощью средства просмотра OpenXML и пролив через листы/строки/ячейки, пытаясь понять, как все это подходит вместе. Это непросто, и документы трудны и ограничены. Это своего рода удовлетворение, когда вы начинаете работать, но это требует много времени.
EDIT
Просто понял, что материал DX у меня есть TcxGrid - то есть не ранее TdxDBGrid. Не уверен, что это повлияет на этот сценарий.
Как работает ExportGridToXLSX без использования OOXML? –
Возможно, это так - я могу ошибаться на этом фронте :-) Я только заметил, что функция доступна, поскольку я всегда использую простой старый ExportGridToExcel. Если вы когда-либо пытались проследить через код сетки DevExpress, вы поймете, что нелегко разгадать, и на данный момент у меня нет всего источника. – shunty
Ну, XLSX - это формат OOXML. Так что это довольно легко разгадать. Я уверен, что код - это совсем другая история. –
Какую сетку вы используете? TStringGrid или TDBGrid? – Zeina
@Zeina: TdxDBGrid – Jeeva
@ Zeina Это не имеет значения. Вопрос о OOXML. –