|
Получить таблицу из Word | ☑ | ||
---|---|---|---|---|
0
stray
22.05.12
✎
14:46
|
Подскажите! Как Получить таблицу Excel-таблицу из Wordа?
Т.е. есть документ word, в него вставлена таблица excel - не могу до нее жобраться. |
|||
1
stray
22.05.12
✎
14:58
|
Up
|
|||
2
aleks-id
22.05.12
✎
15:00
|
яйцо в утке, утка в зайце, заяц в шоке?
|
|||
3
Hostess_
of_Love 22.05.12
✎
15:01
|
зачем такие извращения?
|
|||
4
stray
22.05.12
✎
15:02
|
док не я придумывал))
работают уже так |
|||
5
Hostess_
of_Love 22.05.12
✎
15:04
|
снеси ворд и скажи что теперь работать будут только в экселе.
|
|||
6
stray
22.05.12
✎
15:07
|
Word.Documents.Tables не пройдет, не те таблицы
|
|||
7
Hostess_
of_Love 22.05.12
✎
15:11
|
(6)так они ж делают эти таблицы в экселе, они их не сохраняют?
|
|||
8
stray
22.05.12
✎
15:22
|
Hostess_of_Love- треп великое дело, но желательно по теме :)
есть что-нибудь? |
|||
9
stray
22.05.12
✎
16:16
|
гуру - Up
|
|||
10
ГАГАТУН
22.05.12
✎
16:18
|
(0) на каждой строчке таблицы создай закладку и перебирай их в цикле из 1С
|
|||
11
aleks-id
22.05.12
✎
16:42
|
(9) чо ап то? запускай запись макроса, потыкай в эту таблицу, измени любую ячейку и посмотри как макрос к ней обращается
|
|||
12
manyak
22.05.12
✎
17:42
|
запись макроса не создаст код при работе таким типом диаграмм (встроенным экс. диаграммам в ворде). кури коллекцию InlineShapes документа
|
|||
13
manyak
22.05.12
✎
17:50
|
только эта фича доступна начиная с SP2 2007 офиса вроде, до этих версий ПРОГАММНЫЙ доступ к chart есть только в экселе.
|
|||
14
manyak
22.05.12
✎
17:51
|
программный :)
а вот твоя табличка датасурс:
|
|||
15
stray
22.05.12
✎
18:19
|
отходил, про таблы писал выше - не проходит, макрос не запускается на этой таблице manyak - прав, все это испробовано )) поэтому я здесь, считай 1 раз)
|
|||
16
manyak
22.05.12
✎
18:27
|
(14) код робит?
|
|||
17
stray
22.05.12
✎
18:27
|
нет, на Chart - ошибка чтения (((
|
|||
18
manyak
22.05.12
✎
18:31
|
какой офис? если до 2007 sp2 то не выдет
|
|||
19
stray
22.05.12
✎
18:32
|
2010
|
|||
20
stray
22.05.12
✎
18:33
|
но на фирме, наверное, меньше, формат файла doc
|
|||
21
manyak
22.05.12
✎
18:33
|
должен робить
|
|||
22
manyak
22.05.12
✎
18:35
|
если doc - то точно 2003 или старее, т.е. на машине где запускать обязательно должен быть офис 2007 sp2 или новее
|
|||
23
manyak
22.05.12
✎
18:35
|
у тебя и в 2010 не робит получается?
|
|||
24
stray
22.05.12
✎
18:37
|
да, обгуглился уже за сегодня (
|
|||
25
manyak
22.05.12
✎
18:39
|
Должен робить 100%
|
|||
26
manyak
22.05.12
✎
18:42
|
проверяй терь тогда свойство у item'а что есть диаграмма/график там ведь и другое может быть:
может ты не с тем item-ом работаешь. ты проверяешь работу в VBA или уже в 1С через COm обьект? |
|||
27
stray
22.05.12
✎
18:44
|
в 1С COM/
Ошибка при получении значения атрибута контекста (Chart) воттактоженикак = Word.ActiveDocument.InlineShapes.Item(1).Chart.ChartData.Activate; |
|||
28
manyak
22.05.12
✎
18:46
|
проверь сначала в VBA - робит?
ну и код этот - просто отрывает и показывает эксель табличку с данными для диаграммы. те просто увидеть надо или поменять/выдернуть данные для заноса в 1С? |
|||
29
stray
22.05.12
✎
18:47
|
просто увидеть и выдернуть данные для заноса в 1С
|
|||
30
manyak
22.05.12
✎
18:50
|
позжа буду - продолжим, дети на улицу зовут :)
|
|||
31
manyak
22.05.12
✎
20:49
|
wrd=новый COMОбъект("word.Application");
у меня все работает, табличка с данными открывается |
|||
32
stray
22.05.12
✎
22:35
|
v8.2?
|
|||
33
stray
22.05.12
✎
22:36
|
док точно из 2003 офиса
|
|||
34
stray
22.05.12
✎
22:42
|
открывается файл или табличка в файле??
где она должна открыться? |
|||
35
stray
22.05.12
✎
22:43
|
как ты читаешь данные из этой таблички?
|
|||
36
manyak
23.05.12
✎
07:49
|
до считывания данных еще не докопал, но программно 8.2.15.289 - она визуально открывается. даже если и файл 2003 - все робит, главное открывать его в новых офисах. программно получается тоже самое что сам интерактивно: выбрать поле диаграммы в вордовском файле, появиться раздел "Работа с диаграммами" на верху ленты и будет закладка "конструктор" в которой есть кнопка "Изменить данные" по нажатию на нее загрузиться эксель и видно табличку с исх. данными для диаграммы.
|
|||
37
manyak
23.05.12
✎
09:36
|
в 8.1.13.41 тож все работает
|
|||
38
manyak
23.05.12
✎
09:37
|
данные можно прочитать из SeriesCollection
|
|||
39
stray
23.05.12
✎
11:31
|
да, сам файл doc с табличкой у меня открывается, пару раз щелкаешь на табличку - открывается и табличка, я не могу найти как программно вытащить данные из этой таблички??
|
|||
40
manyak
23.05.12
✎
11:38
|
я ж написал - данные в SeriesCollection
|
|||
41
manyak
23.05.12
✎
11:38
|
лови :)
|
|||
42
stray
23.05.12
✎
11:41
|
хз, не идет у меня
Ошибка при получении значения атрибута контекста (Chart): Произошла исключительная ситуация (0x80004001) my_values = новый comsafearray(Word.ActiveDocument.InlineShapes.Item(1).Chart.SeriesCollection(1).Values); по причине: Произошла исключительная ситуация (0x80004001) |
|||
43
stray
23.05.12
✎
11:42
|
может что установить надо
|
|||
44
stray
23.05.12
✎
11:43
|
ес. не лень, попробуй на моем файле
http://files.mail.ru/TBI5XO |
|||
45
manyak
23.05.12
✎
11:45
|
я не то совсем делал - сори, сча разберемся,у мну не так
|
|||
46
big
23.05.12
✎
11:48
|
зовите Абрахамса, он наставить вас на верный путь
|
|||
47
stray
23.05.12
✎
11:51
|
зовем! )
|
|||
48
manyak
23.05.12
✎
12:23
|
VBA
|
|||
49
manyak
23.05.12
✎
12:24
|
теперь как то надо получить экземляр запушенного экселя в ворде
|
|||
50
manyak
23.05.12
✎
12:30
|
|
|||
51
manyak
23.05.12
✎
12:41
|
вот лови, вроде робит, проверь:
|
|||
52
stray
23.05.12
✎
21:32
|
manyak !!!
супер! спасибо! с меня причитается ) заразы полосатые инет отрубили. |
|||
53
smaharbA
23.05.12
✎
21:34
|
в (14) бредятина
|
|||
54
smaharbA
23.05.12
✎
21:34
|
в (51) куйня несусветная
|
|||
55
smaharbA
23.05.12
✎
21:35
|
(52) дурачек ты
|
|||
56
manyak
23.05.12
✎
22:12
|
(52) в (14) да согласен, так как думал у него интегрированный график экселевский Chart - бегло прочитал топик :) смотри (45), ну а (51) рабочий код - не звезди
|
|||
57
smaharbA
23.05.12
✎
22:15
|
могу звездеть сколь попало, ибо так (51) нельзя
|
|||
58
smaharbA
23.05.12
✎
22:15
|
+ рабочий - до поры
|
|||
59
manyak
23.05.12
✎
22:16
|
чисто в плане знаний - растолкуй в чем плохо (51)? я сам 1С как хобби чисто
|
|||
60
manyak
23.05.12
✎
22:17
|
так то понятно в иделе activeworkbook и activesheet юзать
|
|||
61
smaharbA
23.05.12
✎
22:19
|
wrd=новый COMОбъект("word.Application");
wrd.visible=1; док=wrd.Documents.Open ("C:\mail\график.doc"); Шейпы=док.InlineShapes; Шейпы.Item(1).OLEFormat.Edit(); //далее не адекватно, ибо гетобъектов может оказаться масса, а не только тот что тут создан xls= ПолучитьCOMОбъект(, "excel.Application"); сообщить (xls.Workbooks(1).Worksheets(1).Cells(4, 1).value) |
|||
62
smaharbA
23.05.12
✎
22:20
|
activeworkbook и activesheet - нельзя пользовать никогда (несколько категорично, но сермяжно)
|
|||
63
manyak
23.05.12
✎
22:22
|
согласен, эт частный случай, WdInlineShapeType проверять надо у item'а
|
|||
64
manyak
23.05.12
✎
22:22
|
но ни как не "куйня несусветная" :))))
|
|||
65
smaharbA
23.05.12
✎
22:26
|
(64) ну уж тут не попишешь, актв - не имеет на право существовать
(конечно, несколько безапеляционно, но лучче так, чем потом - почему) |
|||
66
stray
24.05.12
✎
08:51
|
для полного счатья, еще бы данные вытянуть из таблички, не кривые
|
|||
67
manyak
24.05.12
✎
08:53
|
всмысле кривые?
|
|||
68
manyak
24.05.12
✎
08:53
|
типа на экране одно, а выводить другое? :)
|
|||
69
manyak
24.05.12
✎
08:56
|
у тебя ж там в экселе два листа:
Worksheets(1) - "Брошиус" Worksheets(2) - "Стокота 1176, 1177, 1178" у тебя активен второй, нужно писать Worksheets(2) :) |
|||
70
manyak
24.05.12
✎
08:59
|
Cells(4, 1).value - значение
Cells(4, 1).text - выводит так же как на экране |
|||
71
stray
24.05.12
✎
09:01
|
я понял, уже поправил)
|
|||
72
stray
24.05.12
✎
09:02
|
спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |