powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Извлечение втавленных таблиц Excel из Word обратно в Excel
25 сообщений из 29, страница 1 из 2
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33847363
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть документ ворд, туда вставлены таблицы Excel. Не поможет ли кто макросом, чтобы эти таблицы возможно было извлечь назад в Excel, причем в одну книгу, но на разные листы, причем, чтобы ярлыки листов назывались как таблицы?
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848179
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужели не нашел примеров на этот случай? :)

Я так понимаю у тебя таблицы представлены как встроенные объекты. Тогда можно воспользоваться следующим вариантом.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Public Sub FromWordToExcel()
    Dim sh As Word.InlineShape
    Dim xlApp As Excel.Application
    Dim xlWb As Excel.Workbook
    Dim xlWbNew As Excel.Workbook
    Dim xlWs As Excel.Worksheet
    
    Set xlApp = New Excel.Application
    xlApp.Visible = True
    
    Set xlWbNew = xlApp.Workbooks.Add
    
    For Each sh In ActiveDocument.InlineShapes
        If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then
            sh.OLEFormat.ActivateAs ClassType:="Excel.Sheet.8"
            sh.OLEFormat.Activate

            Set xlWb = sh.OLEFormat.Object
            Set xlWs = xlWbNew.Worksheets.Add
            
            xlWb.Worksheets( 1 ).UsedRange.Copy xlWs.Range("A1")
        End If
    Next sh
End Sub
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848585
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНеужели не нашел примеров на этот случай? :) :) да, не нашел.
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848603
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторDim xlApp As Excel.Application на это строке ругается так: компайл эрро. юзер тайп нот дефайнд
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848831
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Библиотеку Excel подключил? Если нет, то Tools->References...->Microsoft Excel X.X Object Library.
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848911
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AshtonБиблиотеку Excel подключил? Если нет, то Tools->References...->Microsoft Excel X.X Object Library. а по-русски? куда ее подключать, наверное к ворду? но там нет тулс-референс
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848925
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
видимо мне когда вордец устанавливали, эту тулзу не установили для него.
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848933
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а понял, джаст э момент, плиз
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33848935
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вобщем в редакторе вижуал бэйсик референсес заблокированы:( придется дома изголяться
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849005
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аштон, а если у объекта будет имя, присвоенное ему в ворде через контекстное меню - название, то каким макаром можно еще и это вывести, ну например в название ярлыков листа?
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849364
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все сработало
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849366
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прикинь, кто-то вставлял таблыцы в отчет, а их в одном месте не собрал, вот я теперь занимался бы тем, шо исправлял бы чьи-то недостатки неграмотной организации труда:)
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849367
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторвобщем в редакторе вижуал бэйсик референсес заблокированы:( придется дома изголяться референсес были заблокированы потому, шо надо сначала перед запуском макроса залезть в вижуал бэйсик, так как после него референсес становятся неактивны.
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849373
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аштон, а если у объекта будет имя, присвоенное ему в ворде через контекстное меню - название, то каким макаром можно еще и это вывести, ну например в название ярлыков листа? - вот главный вопрос, которые остался
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33849942
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При добавлении названия появляется поле SEQ, которое использяется для нумерации элементов документа. Из этого поля и нужно извлечь название.

Попробуй следующий вариант.

Код: plaintext
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.
Private lngI As Long

Public Sub FromWordToExcel()
    Dim sh As Word.InlineShape
    Dim xlApp As Excel.Application
    Dim xlWb As Excel.Workbook
    Dim xlWbNew As Excel.Workbook
    Dim xlWs As Excel.Worksheet
    Dim strCaption As String

    Set xlApp = New Excel.Application
    xlApp.Visible = True
    
    Set xlWbNew = xlApp.Workbooks.Add

    For Each sh In ActiveDocument.InlineShapes
        If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then
            sh.OLEFormat.ActivateAs ClassType:="Excel.Sheet.8"
            sh.OLEFormat.Activate
            
            Set xlWb = sh.OLEFormat.Object
            
            strCaption = fnFindField(lngI)
            
            Set xlWs = xlWbNew.Worksheets.Add
            
            xlWs.Name = strCaption
            xlWb.Worksheets( 1 ).UsedRange.Copy xlWs.Range("A1")
            
            lngI = lngI +  1 
        End If
    Next sh
End Sub

Public Function fnFindField(lngI As Long) As String
    Dim intPos As Integer
    Dim fld As Word.Field
    
    Do
        lngI = lngI +  1 
        intPos = InStr(ActiveDocument.Fields(lngI).Code, "SEQ")
    Loop Until intPos >  0 
    
    Set fld = ActiveDocument.Fields(lngI)
    
    fnFindField = Mid(Trim(fld.Code),  4 , _
      Len(Trim(fld.Code)) - InStr(Trim(fld.Code), "\") -  4 ) & " " & fld.Result
End Function
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33850546
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
этот кода выда ошибку вот здесь

Код: plaintext
Set xlWs = xlWbNew.Worksheets.Add
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33850761
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сработал первый код частично, таблиц где-то 100, а застопорилось все на 21:(
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33850779
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще раз запустил первый код, теперь застопорилось на 8 таблице.

выдал здесь ошибку
Код: plaintext
If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33850790
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
второй вылете тоже, но на 8 строке, опять ругнулся здэс


Код: plaintext
If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33851204
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
последний код выводит номера в ярлыки листов, но вылетают оба варианта:( вчера работал на компе помощнее, вылетело на 21 таблице. а сегодня на компе послабее на 8. шо делать, шеф. гипс снимают - клиент уезжает!
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33851217
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще раз запустил, вылетело сразу, выдал ошибку
Код: plaintext
xlWb.Worksheets( 1 ).UsedRange.Copy xlWs.Range("A1")
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33851300
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и написал авторметод Copy из класса Range завершен неверно
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33851403
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan33второй вылете тоже, но на 8 строке, опять ругнулся здэс


Код: plaintext
If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then


точнее на 8 таблица написал

авторProgID для данного объекта отсутствует
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33851898
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нэт атвэта:(
...
Рейтинг: 0 / 0
Извлечение втавленных таблиц Excel из Word обратно в Excel
    #33852997
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
малчыт аштон:(
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Извлечение втавленных таблиц Excel из Word обратно в Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]