+ Ответить в теме
Страница 2 из 5
ПерваяПервая 1 2 3 4 5 ПоследняяПоследняя
Показано с 11 по 20 из 46

Тема: Макрос для для замены слов в файле word из файла-словаря Excel

  1. #11
    dummy Михаил_П is on a distinguished road
    Регистрация
    08.05.2014
    Сообщений
    7
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Цитата Сообщение от pashulka Посмотреть сообщение
    Если речь идёт о Microsoft Office XP (или старше), то можно воспользоваться этим советом и замутить, что-то вроде :

    Код :
    1. With Application.FileDialog(msoFileDialogFolderPicker)
    2.      If .Show = True Then
    3.         iPath = .SelectedItems(1)
    4.         iPath = IIf(Right(iPath, 1) = "\", iPath, iPath & "\")        
    5.      Else
    6.         MsgBox "Выберите нужную папку", vbCritical, ""
    7.         Exit Sub
    8.      End If
    9. End With
    Интересно, но почему-то макрос не исправляет всё содержимое колонтитулов. Что-то поправляет, что-то оставляет как есть))) Загадка...

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #12
    vans is on a distinguished road
    Регистрация
    30.05.2015
    Возраст
    32
    Сообщений
    1
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Друзья, добрый день. У меня такая же задача как и у автора. Можно ли объеснить как это использвать? Если можно как для тупых.

  4. #13
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    76
    Сообщений
    829
    Вес репутации
    16

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    1) Скачайте пример из поста #6
    2) Составьте свой список автозамены
    3) В макросе укажите свою папку
    4) В макросе укажите расширение файлов (сейчас там только .doc) если есть шанс, что в папке могут наличествовать документы различных версий, например и .docx, то "замените" "*.doc" на "*.doc*"
    5) Кликните кнопку Замена в файлах .doc

    P.S. Повторюсь, но тестировать лучше на копиях документах, ибо отката(отмены действий макроса) уже не будет.

  5. #14
    dummy KapitanFracas is on a distinguished road
    Регистрация
    02.03.2016
    Возраст
    28
    Сообщений
    7
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Здравствуйте скачал пример. Спасибо автору.

    Подскажите пожалуйста почему при попытке запуска макроса:

    Private Sub Test()

    Dim iPath$, iFileName$, iText$
    Dim iCount&, iCounter&, iArrText As Variant
    Dim iWordApp As Object, iWordDoc As Object

    iPath = "C:\Users\pc\Desktop\CHINESE TRANSLATIONS"
    iFileName = Dir(iPath & "*.doc*")

    If iFileName <> "" Then
    With Range(Cells(2, "A"), Cells(Rows.Count, "B").End(xlUp))
    iArrText = .Value: iCount = UBound(iArrText)
    End With

    Set iWordApp = CreateObject("Word.Application")
    iWordApp.Visible = False
    'iWordApp.DisplayAlerts = 0 'wdAlertsNone

    Do
    Set iWordDoc = iWordApp.Documents.Open(iPath & iFileName)

    With iWordDoc.Content.Find
    For iCounter = 1 To iCount
    .Execute FindText:=iArrText(iCounter, 1), _
    ReplaceWith:=iArrText(iCounter, 2), Replace:=2 'wdReplaceAll
    Next
    End With

    iFileName = Dir: iWordDoc.Close -1 'wdSaveChanges
    Loop Until iFileName = ""

    iWordApp.Quit
    Else
    MsgBox "files with extension .doc not found", vbCritical, ""
    End If
    .................................................. ...........

    макрос сразу перескакивает в предупреждение

    Else
    MsgBox "files with extension .doc not found", vbCritical, ""
    End If

    то есть не находит ни одного файла с расширением "*.doc*"?

    Спасибо

  6. #15
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    76
    Сообщений
    829
    Вес репутации
    16

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Не было в моём примере предупреждения на буржуйском языке

    Зато было написано, цитирую

    Код :
    1. iPath = "C:\Test\" 'укажите свою папку с завершающим слэшем

    А где у Вас слэш после CHINESE TRANSLATIONS ?

  7. #16
    dummy KapitanFracas is on a distinguished road
    Регистрация
    02.03.2016
    Возраст
    28
    Сообщений
    7
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    спасибо большое, если смогу запустить с меня бутыль буржуйского

  8. #17
    dummy KapitanFracas is on a distinguished road
    Регистрация
    02.03.2016
    Возраст
    28
    Сообщений
    7
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    нет не удалось

    ................
    Private Sub Test()
    With Application.FileDialog(msoFileDialogFolderPicker)
    If .Show = True Then
    iPath = .SelectedItems(1)
    iPath = IIf(Right(iPath, 1) = "\", iPath, iPath & "\")
    Else
    MsgBox "§£§í§Ò§Ö§â§Ú§ä§Ö §ß§å§Ø§ß§å§ð §á§Ñ§á§Ü§å", vbCritical, ""
    Exit Sub
    End If
    End With

    If iFileName <> "" Then
    With Range(Cells(2, "A"), Cells(Rows.Count, "B").End(xlUp))
    iArrText = .Value: iCount = UBound(iArrText)
    End With

    Set iWordApp = CreateObject("Word.Application")
    iWordApp.Visible = False
    'iWordApp.DisplayAlerts = 0 'wdAlertsNone

    Do
    Set iWordDoc = iWordApp.Documents.Open(iPath & iFileName)

    With iWordDoc.Content.Find
    For iCounter = 1 To iCount
    .Execute FindText:=iArrText(iCounter, 1), _
    ReplaceWith:=iArrText(iCounter, 2), Replace:=2 'wdReplaceAll
    Next
    End With

    iFileName = Dir: iWordDoc.Close -1 'wdSaveChanges
    Loop Until iFileName = ""

    iWordApp.Quit
    Else
    MsgBox "files with extension .doc not found", vbCritical, ""
    End If

    End Sub
    .................

    Выбор фолдера запускается, выбираю фолдер, сразу идет сообщение что файл не найден.

    Пашулька а может оставите способ связи? договоримся.

  9. #18
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    76
    Сообщений
    829
    Вес репутации
    16

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Достаточно просто добавить слэш, т.е.

    Код :
    1. iPath = "C:\Users\pc\Desktop\CHINESE TRANSLATIONS\"

    Если же нужен диалог выбора папки, то не нужно выкидывать из авторской версии важные моменты. Проще говоря, должно быть так :

    Код :
    1. End With
    2.  
    3. iFileName = Dir(iPath & "*.doc*")
    4.  
    5. If iFileName <> "" Then

    И не стоит забывать, что в этом примере функция Dir будет игнорировать файлы с атрибутами Скрытый и/или Только для чтения. Если же это неприемлемо, то здесь в Example2 есть решение.
    Последний раз редактировалось pashulka; 04.03.2016 в 19:48.

  10. #19
    dummy KapitanFracas is on a distinguished road
    Регистрация
    02.03.2016
    Возраст
    28
    Сообщений
    7
    Вес репутации
    0

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Спасибо, сделал, теперь диалог открывается но выдается ошибка 5151

    Pashulka a давайте еще упростим задачу? Исходник был написан для множественных файлов в выбранной папке. Но мне нужен один файл, не подскажете какой диалог лучше для выбора одного файла? Я диалог отлажу отдельно а потом перейдем к замене. Спасиб

  11. #20
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    76
    Сообщений
    829
    Вес репутации
    16

    По умолчанию Re: Макрос для для замены слов в файле word из файла-словаря Excel

    Один из возможных вариантов :

    Код :
    1. Dim iFileName As Variant
    2. iFileName = Application.GetOpenFilename("Word Files (*.doc*), *.doc*")
    3.    
    4. If iFileName <> False Then
    5.    MsgBox iFileName, , ""
    6. Else
    7.    MsgBox "Надо было выбрать документ", vbCritical, ""
    8. End If

+ Ответить в теме
Страница 2 из 5
ПерваяПервая 1 2 3 4 5 ПоследняяПоследняя

Похожие темы

  1. Подсчет слов и пробелов в текстовом файле
    Здание подсчитать слова и пробелы в текстовом файле. { FILE *file; char *fname = "ReadMe.txt"; char result_string= "none"; int word=1;...
    от fyzyz в разделе C и C++
  2. Макрос для word
    Добрый день, уважемые форумчане... Вообщем такая проблема, не могли бы подсказать, как правильно написать скрипт на VBA, работать должен вот...
    от КИС в разделе MS Office и VB(A).
  3. Макрос конветации excel файла в .txt
    Спасибо Всем
    от chiiv в разделе MS Office и VB(A).
  4. Поиск фраз и слов палиндромов в файле-словаре
    Помогите пожалуйста с решением следующей задачи: Дан файл, содержащий большой словарь русских слов и выражений. Составить программу, которая...
    от Anastasija2203 в разделе задачи на Паскале и Delphi
  5. Макрос для Microsoft Excel Worksheet в документе Microsoft Word
    Как, используя макросы в Microsoft Word: 1) Установить заданное число строк и столбцов для Microsoft Excel WorkSheet? 2) Присвоить значения...
    от AleksP в разделе MS Office и VB(A).

Ваши права

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