Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для aldangold
1 / 1 / 0
Регистрация: 13.02.2013
Сообщений: 28

Export to Word

31.05.2013, 23:51. Показов 3042. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть код добавляющий из БД в Шаблон Word'вского документа
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[SPOILER]public ActionResult Export()
        {
 
 
            // "Создаем" word
 
            Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
            //Делаем его видимым
            wordApp.Visible = true;
            Microsoft.Office.Interop.Word.Document oDoc = new Microsoft.Office.Interop.Word.Document();
 
            object missing = System.Type.Missing;
            object readOnly = false;
            object isVisible = false;
            object fileName = Server.MapPath("~/App_Data/Публикации.docx");
         
 
            object oTemplate = Server.MapPath("~/App_Data/Pub.dotx");
            oDoc = wordApp.Documents.Add(ref oTemplate, 
            ref missing, 
            ref missing, ref missing );
            
            object start = 0, end = 0;
 
          Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;
 
 
 
             var publications = (List<Publication>)Session["Publications"]; 
             for (int i = 1; i < publications.Count; i++)
             {
                              
                int k = 4;
 
                                  
                 Word.Cell cell = wordApp.ActiveDocument.Tables[1].Cell(k, 1);
                 cell.Range.Text = "" + i;
                 Word.Cell cell1 = wordApp.ActiveDocument.Tables[1].Cell(k, 2);
                 cell1.Range.Text = p.Title ?? "";
                 Word.Cell cell2 = wordApp.ActiveDocument.Tables[1].Cell(k, 3);
                 cell2.Range.Text = p.SourceType.Title;
                 Word.Cell cell3 = wordApp.ActiveDocument.Tables[1].Cell(k, 4);
                 cell3.Range.Text = t;
                 Word.Cell cell4 = wordApp.ActiveDocument.Tables[1].Cell(k, 5);
                 cell4.Range.Text = countPage + " c.";
                 Word.Cell cell5 = wordApp.ActiveDocument.Tables[1].Cell(k, 6);
                 cell5.Range.Text = p.CoAuthor ?? "";
 
                 if (i < publications.Count)
                 {
                     wordApp.ActiveDocument.Tables[1].Rows.Add(wordApp.ActiveDocument.Tables[1].Rows[k]);
                 }
                     
                 
                 k++;
                 
 
               
             }
             oDoc.Fields.Update();
             oDoc.SaveAs2();
             var ExportToWord = oDoc.Content.WordOpenXML;
            oDoc.Close(ref missing, ref missing, ref missing);
            wordApp.Quit(ref missing, ref missing, ref missing);
 
            oDoc = null;
            wordApp = null;
         
            return new ExcelResult("Публикации.doc", ExportToWord);
        }[/SPOILER]
Добавлено через 17 часов 32 минуты
Администрация и модераторы очень оперативно действуют конечно. Так и не по правили сообщение.
Пред идущее сообщение отправил не успев дописать.
Суть проблемы. Есть Код предоставленный выше Выполняющий экспорт в Ворд. Есть шаблон вордовский с таблицей
Сам шаблон: https://www.dropbox.com/s/ogqz... %D0%BA.PNG
В таблицу есть уже поле в которое я записываю данные, и затем добавляю еще одну строку для записи следующих данных по циклу. Но строка добавляется почему то постояно верх и получается что данные заполняются снизу вверх.
https://www.dropbox.com/s/tlhd... D0%BA1.PNG
И остается поле вверху пустое.
Подскажите как добавлять строку вниз и данные чтоб заполнялись попорядку.

Добавлено через 6 часов 7 минут
Вопрос решил, изменив цикл
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.05.2013, 23:51
Ответы с готовыми решениями:

Export to word Слишком длинный строковый параметр
Делаю экспорт в Word. Вылетает ошибка &quot;Слишком длинный строковый параметр&quot;, если в richBox ввести много теста. Как сделать так, чтобы можно...

Jquery word export
Здравствуйте. Кто знаком с этим плагином подскажите, нужно таблицу со страницы сохранить в ворд, но сохраняется она без заданных стилей, то...

Word.Application. Взаимодействие с word. Добавить общие шаблоны *.dot в папку appdata и в word
Добрый день! Подскажите, пожалуйста, возможно ли средствами делфи активировать кнопку &quot;Добавить&quot; (ниже поясняющие скрины) и...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.05.2013, 23:51
Помогаю со студенческими работами здесь

Export
Существует задание: Из таблицы, в которую валится статистика за день, делать export в файл и кидать этот файл в определённую дирекорию на...

export грида
Доброго дня. Тема уже давно заезженная. Но у меня возникли трудности и я хочу прояснить ситуацию )) у меня есть ф-ция выгрузки ...

Export SVG
Всем привет! Может кто сталкивался со след. проблемой: При экспорте в svg текст разделяется на 2 части, хотя в CDR он цельный, как один...

Функции в WP All Export
Добрый день, коллеги. Столкнулся с проблемой. Плагин идеально выводит в excel-файл все кастомные поля, кроме поля с массивом. Написал...

export to DBF
Всем привет! Есть таблица - T1 со следующей структурой: Field1 tinyint Field2 decimal(10,3) Field3 int Для экспорта...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru