Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 13.03.2018, 19:08   #1
MBura
Новичок
 
Регистрация: 12.03.2018
Сообщений: 1
Репутация: 10
По умолчанию Выбор нескольких документов (VBA скрипт, который позволяет переносить данные из Word в Excel)

Здравствуйте.
У меня есть скрипт, который позволяет переносить данные из Word в Excel, но по одному. Не получается осуществить выбор нескольких файлов, не могли бы помочь?

Код:

Sub CopyOldWordDoc()
Dim a As Variant, MainBook As Workbook, CurrentSheet As String
 Set MainBook = ActiveWorkbook
 CurrentSheet = ActiveSheet.Name
              Dim FD As FileDialog
              Dim iFileName As String
              Dim Book As Workbook
              Dim CheckNameBook As String
       Set FD = Application.FileDialog(msoFileDialogFilePicker)
       With FD
             .Filters.Clear
             '.Filters.Add "Microsoft Word files", "*.doc"
             .Filters.Add "All files", "*.*"
             .AllowMultiSelect = False
             .InitialFileName = ThisWorkbook.Path
             .Title = "Открытие документа"
             .ButtonName = "Открыть"
            If .Show = False Then
               MsgBox "Вы не указали файл - источник!", 48, "Ошибка"
               Exit Sub
            Else
               iFileName = .SelectedItems(1)
            End If
         End With
         Set FD = Nothing

        ' Открытие документа Word и копирование содержимого в новый лист

    Dim WordApp As Object, CopyArea As Variant
     Set WordApp = CreateObject("Word.Application")
       WordApp.Application.Visible = False
       WordApp.Documents.Open Filename:=iFileName
       With WordApp.ActiveDocument
           Set CopyArea = .Range(0, .Characters.Count)
               CopyArea.Select
               WordApp.Selection.Copy
       End With
       
     'создаем новый лист для переноса
     Set wsDataSheet = ActiveWorkbook.Sheets.Add(after:=Sheets(Sheets.Count))
     Dim TempBook As Workbook
     Set TempBook = ActiveWorkbook
         'TempBook.Worksheets(1).Cells.NumberFormat = "@"
         'TempBook.Worksheets(1).Range("A1").Select
         ActiveSheet.Paste
         'Application.CutCopyMove = False
         WordApp.Quit
        
 MainBook.Activate
 Worksheets(CurrentSheet).Activate
 Range("A1").Activate
End Sub



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 13.03.2018 в 19:40.
MBura вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как макросом из excel брать данные с word документов? RISagitov Microsoft Office Excel 11 13.06.2013 14:21
Скрипт, который позволяет добавлять объекты в DOM Chel JavaScript, Ajax 2 05.03.2012 08:51
Экспорт значений из нескольких документов Word в одну таблицу Excel для дальнейших расчетов. YJYNGK Microsoft Office Excel 0 30.10.2010 13:42
Как средствами VBA экспортировать данные из Excel в Word? Pavel_Ine Microsoft Office Excel 3 20.04.2009 14:14


11:56.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru