|
v8: У кого есть примеры работы с таблицами Word? | ☑ | ||
---|---|---|---|---|
0
dclxvi
27.12.12
✎
12:26
|
Надо прочитать данный из таблицы ворда.
Есть в документ несколько таблиц, перебрать их найти нужную, и считать данные. Если есть какие примеры зашлите плиз: [email protected] |
|||
1
dk
27.12.12
✎
12:34
|
капец народ обнаглел
(0) в поиске посмотреть не пробовал? |
|||
2
dclxvi
27.12.12
✎
12:35
|
(1) С поиском я и сам напишу
|
|||
3
samozvanec
27.12.12
✎
12:37
|
(2) уверен?
|
|||
4
AquaKosh
27.12.12
✎
12:46
|
Соглашусь с (1) - народ обнаглел в конец.
|
|||
5
dclxvi
27.12.12
✎
12:47
|
(3) Да
|
|||
6
cw014
27.12.12
✎
12:47
|
(4) Вообще, не хочет свои наработки бесплатно отдавать, что за наглеж?
|
|||
7
dclxvi
27.12.12
✎
12:47
|
(4) А зачем форум то?
|
|||
8
samozvanec
27.12.12
✎
12:49
|
(5) вот и проверим
|
|||
9
rs_trade
27.12.12
✎
12:49
|
(7) ЧСВ потешить. Думал тебе помогать?
|
|||
10
dclxvi
27.12.12
✎
12:51
|
(9) > ЧСВ потешить. Думал тебе помогать?
Приматы социальны животные. У них генетически заложено повышать ЧСВ помогая мне. |
|||
11
samozvanec
27.12.12
✎
12:54
|
(10) тоже проверим)
|
|||
12
djekting
27.12.12
✎
13:02
|
||||
13
cw014
27.12.12
✎
13:04
|
(12) Ты не понял. На такое уже был дан чоткий ответ в (2)
|
|||
14
AndyD
27.12.12
✎
13:06
|
(10) вот пусть тебе животные и помогают!
|
|||
15
Eugene_life
27.12.12
✎
13:17
|
Телепатирую.. 1986 год рождения
|
|||
16
dclxvi
27.12.12
✎
13:33
|
Может кому понадобится
Функция ВзятьСтроку(ТекТекст) Если СтрЧислоСтрок(ТекТекст)>0 Тогда ТекСтрока=СтрПолучитьСтроку(ТекТекст,1); Иначе ТекСтрока=""; КонецЕсли; Возврат ТекСтрока КонецФункции Процедура КнопкаВыполнитьНажатие(Кнопка) Wk = Новый COMОбъект("Word.Application"); Wk.Visible = Истина; Wk.Documents.Open("D:\Temp_Баранов\V8\Base\ФМС\2.rtf"); Документ = Wk.ActiveDocument(); Для Каждого Таблица из Документ.Tables Цикл ТекСтрока=ВзятьСтроку(СокрЛП(Таблица.Cell(1, 1).Range().Text)); Если ТекСтрока="Документ, подтверждающий проведение операции" Тогда Для н=4 По Таблица.Rows.Count Цикл сообщить("строка: "+н); Для м=1 По Таблица.Columns.Count Цикл сообщить("колонка: "+м); Сообщить(ВзятьСтроку(СокрЛП(Таблица.Cell(н, м).Range().Text))); КонецЦикла; КонецЦикла; Конецесли; КонецЦикла; Документ.Close(); Wk.Quit(); КонецПроцедуры |
|||
17
dclxvi
27.12.12
✎
13:33
|
(12) Сенкс, местами помогло.
|
|||
18
dclxvi
27.12.12
✎
13:34
|
(14) А ты не животное что ли?
|
|||
19
Maxus43
27.12.12
✎
13:35
|
Попытка
MSWord = Новый COMОбъект("Word.Application"); Исключение Сообщить("Не удалось инициализировать Microsoft Word"); Возврат; КонецПопытки; Запрос = Новый Запрос; // Получить данные для формируемого прайс-листа. Запрос.Текст = "ВЫБРАТЬ | ЦеныКомпанииСрезПоследних.ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения, | ЦеныКомпанииСрезПоследних.Цена, | ЦеныКомпанииСрезПоследних.Номенклатура.Наименование КАК Номенклатура, | 1 КАК Количество |ИЗ | РегистрСведений.ЦеныКомпании.СрезПоследних(&Дата, ТипЦен = &ТипЦен) КАК ЦеныКомпанииСрезПоследних | |УПОРЯДОЧИТЬ ПО | Номенклатура | |ИТОГИ Количество(Количество) ПО | ОБЩИЕ"; Запрос.УстановитьПараметр("Дата" , ТекущаяДата()); Запрос.УстановитьПараметр("ТипЦен", ТипЦен); Результат = Запрос.Выполнить(); Попытка // Создать новый документ MSWord.Documents.Add(); Документ = MSWord.ActiveDocument(); // Добавить новый параграф в созданный документ. Документ.Paragraphs.Add(); НомерПараграфа = Документ.Paragraphs.Count(); Параграф = Документ.Paragraphs.Item(НомерПараграфа); // В созданный параграф вставить новый «диапазон» // и разместить в нем текст «Прайс-Лист». Параграф.Range.InsertAfter("Прайс-Лист"); // Установить стиль параграфа «Заголовок 1» (он должен быть определен). Параграф.Range.Style = "Заголовок 1"; Документ.Paragraphs.Add(); НомерПараграфа = Документ.Paragraphs.Count(); Параграф = Документ.Paragraphs.Item(НомерПараграфа); Параграф.Range.InsertAfter("Сформирован на дату: " + Строка(ТекущаяДата())); Параграф.Range.Style = "Обычный"; ВыборкаКоличества = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); ВыборкаКоличества.Следующий(); КоличествоСтрок = ВыборкаКоличества.Количество; Документ.Paragraphs.Add(); НомерПараграфа = Документ.Paragraphs.Count(); Параграф = Документ.Paragraphs.Item(НомерПараграфа); // Вставить таблицу с количеством строк равным количеству записей // в выборке результата запроса и с тремя колонками Документ.Tables.Add(Параграф.Range, КоличествоСтрок, 3); // Получить таблицу как объект в отдельную переменную // учитывая тот факт, что таблица у нас единственная Таблица = Документ.Tables.Item(1); // Записать данные в ячейку таблицы строка №1, колонка №1 Таблица.Cell(1,1).Range().InsertAfter("Номенклатура"); // Установить цвет фона в ячейке Таблица.Cell(1,1).Shading.BackgroundPatternColor = 16776960; Таблица.Cell(1,2).Range().InsertAfter("Цена"); Таблица.Cell(1,2).Shading.BackgroundPatternColor = 16776960; Таблица.Cell(1,3).Range().InsertAfter("Ед.Изм."); Таблица.Cell(1,3).Shading.BackgroundPatternColor = 16776960; НомерСтроки = 1; Выборка = ВыборкаКоличества.Выбрать(); Пока Выборка.Следующий() Цикл НомерСтроки = НомерСтроки + 1; Таблица.Cell(НомерСтроки,1).Range().InsertAfter(Выборка.Номенклатура); Таблица.Cell(НомерСтроки,2).Range().InsertAfter(Строка(Выборка.Цена)); Таблица.Cell(НомерСтроки,3).Range().InsertAfter(Выборка.ЕдиницаИзмерения); КонецЦикла; MSWord.Visible = Истина; MSWord.Activate(); Исключение // Если произойдет ошибка выводятся данные об ошибке и объект закрывается. Сообщить(ОписаниеОшибки()); MSWord.Application.Quit(); КонецПопытки; |
|||
20
НЕА123
27.12.12
✎
13:36
|
(18)
ОФФ. Ложка деревянная али металл какой? |
|||
21
dclxvi
27.12.12
✎
13:37
|
(19) Это запись, а мне чтение нужно было.
|
|||
22
Eugene_life
27.12.12
✎
13:39
|
:D "D:\Temp_Баранов\V8\Base\ФМС\2.rtf"(c) посмеялся
|
|||
23
dclxvi
27.12.12
✎
13:45
|
(22) И в чем проблема?
|
|||
24
Maxus43
27.12.12
✎
13:47
|
(21) а может пригодится
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |