Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2012, 16:20   #1
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию Генерация отчета

Доброго времени суток! Необходимо на основе excel документа сформировать в word отчет, используя openxml sdk. В ворде шаблон сделала, столкнулась с проблемой получения значений из excel, нашла пример:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Spreadsheet;
using DocumentFormat.OpenXml.Packaging;

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SpreadsheetDocument myDoc = SpreadsheetDocument.Open(@"data.xlsx", true))
            {
                WorkbookPart workbookPart = myDoc.WorkbookPart;
                WorksheetPart worksheetPart = workbookPart.WorksheetParts.First();                  
                SheetData sheetData =
                worksheetPart.Worksheet.Elements<SheetData>().First();
                foreach (Row r in sheetData.Elements<Row>())
                {
                    foreach (Cell c in r.Elements<Cell>())
                    {
                        string text = c.CellValue.Text;
                        Console.Write(text);
                    }
                }
            }
        }
    }
}
Но не выводит он значения ячеек, проблема в том что он вообще не может найти строк. как исправить?
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 31.03.2012, 17:13   #2
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

Вопрос что вставить, где знаки вопроса
Код:
static private void insert_data(DocumentFormat.OpenXml.Wordprocessing.Table t)  //вставка данных из excel(таблица word)
        {
            using (SpreadsheetDocument excel = SpreadsheetDocument.Open("data.xlsx", false))
            {
                WorkbookPart workbookPart = excel.WorkbookPart;
                WorksheetPart worksheetPart = workbookPart.WorksheetParts.First();
                SheetData sheetData = worksheetPart.Worksheet.Elements<SheetData>().First();
                string text=null;
                foreach (Row r in sheetData.Elements<Row>())
                {
                    foreach (Cell c in r.Elements<Cell>())
                    {
                        TableRow table_row = t.AppendChild(new TableRow());
                        TableCell table_cell1 = table_row.AppendChild(new TableCell());
                        Paragraph para = table_cell1.AppendChild(new Paragraph());
                        DocumentFormat.OpenXml.Wordprocessing.Run run = para.AppendChild(new DocumentFormat.OpenXml.Wordprocessing.Run());
                        text = ??????
                        run.AppendChild(new DocumentFormat.OpenXml.Wordprocessing.Text(text));
                    }
                }

            }
        }
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 31.03.2012, 18:45   #3
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

все проблема решена
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание отчета Yusha Общие вопросы Delphi 3 27.12.2011 07:09
генерация отчета Александр Бутырин Общие вопросы Delphi 1 13.11.2011 14:46
Формирование отчета Jenikj Microsoft Office Access 2 15.04.2011 13:15
Создание отчета Alexnoir Microsoft Office Access 11 16.02.2011 01:07
Подпись отчета Anutik Microsoft Office Excel 8 25.09.2009 11:26