В приложении word нельзя присвоить документу имя уже открытого документа

Обновлено: 14.04.2023

Возможно, шаблон Normal.dot, используемый Word, поврежден. Если вы столкнулись с одной из ошибок, описанных в разделе «Аннотация» данной статьи, с целью определения причины проблемы временно можно переименовать шаблон Normal.dot.

Переименование шаблона Normal.dot восстанавливает стандартные значения некоторых параметров, в том числе пользовательских стилей, панелей инструментов, макросов и записей автотекста. Настоятельно рекомендуется не удалять файл Normal.dot, а переименовывать его, в этом случае вы сможете восстановить настройки, если шаблон не поврежден.

Чтобы переименовать файл Normal.dot, выполните следующие действия.

Закройте все экземпляры программы Word, включая WordMail.

В поле Имя введите Normal.dot.

В поле Поиск в выберите локальный жесткий диск (или альтернативное местонахождение пользовательского шаблона, если вы запустили Word с сетевого сервера).

Щелкните правой кнопкой мыши каждый файл Normal.dot, который отображается в диалоговом окне Результаты поиска. Выберите в контекстном меню команду Переименовать. Присвойте файлу новое имя, например OldNormal.dot или Normal-1.dot.

Сверните диалоговое окно «Результаты поиска».

Для запуска Word перезапустите клиент автоматизации.

Корректный запуск Microsoft Word говорит о том, что проблема решена. В этом случае проблема заключалась в повреждении шаблона Normal.dot. Возможно, придется восстановить некоторые выбранные настройки. Если переименованный вами файл Normal.dot содержит такие персональные настройки, как стили, макросы или элементы автотекста, которые восстановить непросто, можно попытаться скопировать эти настройки из старого файла Normal.dot в новый с помощью организатора.

Для получения дополнительной информации об использовании организатора выполните следующие действия:

Выберите Помощник Office.

Введите Использование организатора.

Выберите Использование параметров из другого документа или шаблона.

Если настройки панели инструментов хранятся в пользовательской панели инструментов, можно будет скопировать их с помощью организатора. К сожалению, если настройки выполнялись в одной из встроенных внутренних панелей инструментов Word, после переименования шаблона вам, вероятно, придется создать их вновь, поскольку эти изменения скопировать с помощью организатора нельзя.

(c) Корпорация Microsoft (Microsoft Corp.), 1999. Все права защищены. Статья подготовлена при участии Криса Йенсена (Chris Jensen), корпорация Майкрософт.

Ссылки

189439 WD97: Word не удается открыть «Не удается открыть существующий <объект>» (эта ссылка может указывать на содержимое полностью или частично на английском языке)

224338 PRB: Ошибка 800A175D – Не удается открыть банк макросов (эта ссылка может указывать на содержимое полностью или частично на английском языке)

246018 ОШИБКА: Ошибка автоматизации 8001010A при автоматизации Word 2000 (эта ссылка может указывать на содержимое полностью или частично на английском языке)

Немного философии. В действительности, зачем нужно формировать из информационной базы текстовые файлы, и почему обязательно в формате Ворд?

Потому, что пользователь для работы с текстом использует текстовый процессор. Строго говоря, кроме Ворда всегда существовали альтернативные программы, не уступающие по функционалу. Сейчас 2021 год и пользователи давно привыкли к таким вещам как жесткий пробел, запрет висящих строк, абзац, начинающийся с новой страницы, межстрочный интервал, колонтитулы и абзацные отступы. Довольно часто можно столкнуться с заявлением «наша разработка может формировать документы в формате Ворд». При дальнейшем рассмотрении оказывается, что «шаблон» хранится непосредственно в информационной базе либо в виде текста, либо в виде форматированного текста, либо в виде набора абзацев и так далее. Как бы ни старались разработчики платформы и приложения, полученный файл это не тот «Ворд», которого ожидает пользователь. Этот эрзац всегда является компромиссом между полноценным файлом Ворда и возможностями системы автоматизации. Для того, чтобы формировать полноценный файл Ворда, со всеми возможностями форматирования, которыми пользователи привыкли пользоваться, требуется пересоздать Ворд внутри информационной системы, что практически недостижимо.

Потому, что никакие другие файлы кроме файлов Ворда не будут приняты партнерами пользователя. В этом смысле Ворд безальтернативен т.к. все пользуются именно Вордом. Можно сколько угодно рассуждать о преимуществах Лайбре Офиса, но, когда ежедневно нужно обмениваться документами с десятком новых людей, без Ворда не обойтись.

Что значит сформировать файл Ворд?

В связи с неоднозначностью сложившейся терминологии, считаю нужным пояснить. Под формированием файла Ворд по пользовательскому шаблону я подразумеваю следующий процесс. Пользователь передает разработчику файл с образцом документа, который хочет получать из информационной системы в автоматизированном режиме. Разработчик дорабатывает информационную систему таким образом, чтобы она позволяла формировать файлы, точно соответствующие первоначальному образцу. Точно, значит без явных указаний пользователя разработчик не меняет по своему усмотрению ни одного элемента форматирования, ни шрифт, ни размер, ни поля, ни колонтитулы. НИЧЕГО не меняет. Совершенно ничего. На выходе пользователь должен получить документ неотличимый от документа, созданного собственноручно.

Способы формирования файла Ворд

Работа программы по формированию файла сводится к модификации образца, предоставленного пользователем. К счастью, пользователи приложений, построенных на базе 1С-Предприятия, люди скучные. И их запросы к формированию файлов невелики. Им не требуются информационные буклеты или рекламные плакаты. Им нужны документы. Договоры, акты, письма, исковые заявления, и т.д. Потому обработка файла программой сводится к замене (вставке) текста на полученный из базы данных, удаление каких-то блоков текста и, быть может, вставке небольших картинок, например, логотипа или штрих-кода.

Существует два популярных способа работы с файлами Ворд:

1. Через СОМ-Объект Ворд.

2. Через непосредственную модификацию файлов docx

Главное отличие между ними заключается в том, что первый способ предоставляет разработчику инструмент — полнофункциональный API, позволяющий делать с документом все то же самое, что может делает пользователь, непосредственно работая в редакторе. Второй же способ предполагает собственную разработку инструмента, на основании документации по формату хранения файла. Если функциональность разработанного инструмента перестанет удовлетворять возникающим потребностям — придется разрабатывать (или искать) новый инструмент. В то время как модернизация кода основанного на API СОМ-объектов не представляет сложностей.

Первый способ предполагает, что на том компьютере, где будет исполняться код приложения и формироваться файл, установлен Майкрософт Офис. При установке, Офис регистрирует в Виндоус СОМ-объекты для каждого из приложений входящих в пакет. Таким образом, другие приложения, запущенные на компьютере, могут через интерфейс СОМ-объектов выполнять любые действия с документами офисных приложений, возможности предоставленного программного интерфейса, как минимум, не уступают возможностям пользователя, редактирующего документ непосредственно в приложении.

Главная проблема примеров из интернета по рассматриваемой теме — игнорируется тот факт, что за компьютером сидит живой пользователь. Видимо, предполагается, что после нажатия кнопки «сформировать файл», пользователь должен замереть, не дышать, не дотрагиваться до мыши и клавиатуры в течение всего времени создания файла. А ведь формирование каждого файла может занимать заметное время, в некоторых случаях — больше минуты. И ладно бы вопрос стоял «или так или никак». Но ведь на самом деле, нет. Можно работать с СОМ-Объектом параллельно с работой пользователя, код чувствительный действиям пользователя не имеет никаких преимуществ перед кодом, не мешающим пользователю. Единственная причина, по которой он используется — нежелание разработчика вникнуть в проблему и рассмотреть альтернативные варианты решения.

Код языка 1С для работы с СОМ-Объектами на сервере и на клиенте ничем не отличается. Единственное, за сервером не работает реальный пользователь, поэтому проблема неудачного кода не выплывает с такой остротой. Повторюсь, преимуществ у такого кода все равно нет. Тем более, что код нужно отлаживать, часто это удобнее делать на клиенте, вот и появился пользователь. А еще, может потребоваться перенос работающего кода с сервера на клиент, например, в рамках рефакторинга и изменения архитектуры приложения. А еще, код может работать в файловой базе, где «сервер» очень условен — программный слой, запускаемый на машине каждого пользователя. Таким образом, лучше всего исходить из того, что пользователь за компьютером есть всегда.

Объектная модель Ворд

Ворд, запущенный в качестве СОМ-Объекта, предоставляет доступ к множеству объектов приложения. Понятие «объект» такое же как везде — программная абстракция, имеющая методы и свойства. Методы могут быть как процедурами, так и функциями, при этом функции можно вызывать как процедуры, игнорируя возвращаемое значение. Свойства могут быть либо объектами, либо обычными (скалярными, примитивными) данными, такими как число, строка, логический тип.

Среди объектов особо выделяются специальные объекты-контейнеры, называемые коллекциями. Каждая коллекция предназначена для хранения ссылок на группу однотипных объектов. Например, коллекция Documents хранит ссылки на объекты Document, коллекция Tables хранит ссылки на объекты Table и т.д. Все коллекции именованы во множественном числе, а обычные объекты в единственном. Нумерация объектов в коллекции начинается с единицы. Коллекции Ворд можно перебирать циклом «Для каждого» языка программирования 1С.

Полный список объектов можно, и нужно, смотреть в справочной системе Ворд (раздел справки по Вижуал Бейсику (VBA)). Для старых версий справка откроется локально на компьютере пользователя. Новые версии отправят на сайт Майкрософт: en-us /office/vba/api/overview/word/object-model

Многие методы объектов Ворда в качестве параметров принимают числовые значения. Для того, чтобы не путаться в числовых значениях, в Вижуал Бейсике предусмотрены именованные константы. Например, константа wdFormatRTF соответствует числу 6. В Вижуал Бейсике можно писать код так:

Вне VBA именованные константы недоступны, поэтому код 1С будет таким:

Или, без “магических” чисел, таким:

Я предпочитают последний вариант, терпеть не могу непонятных чисел в коде.

Запуск Ворд, открытие файла

Традиционно, первые три строчки работы СОМ-Объектом Ворд выглядят так:

… и это уже неправильно! Третья строчка сразу говорит о том, что перед вами бездумная копипаста. Справедливости ради, бывают и толковые примеры, начинающиеся именно так, но, это лишь подтверждает, что даже в толковых примерах присутствует копипаста, не осмысленная автором. Что неправильно с третьей командой будет объяснено ниже, сначала разберем первые две строки.

Запускает приложение Ворд и возвращает на него ссылку. Теперь по ссылке Word мы можем обращаться к СОМ-объекту. Возникает закономерный вопрос, влияет ли как-то окружение, в момент выполнения команды, на результат её работы? Из окружения нас интересует в первую очередь интерактивная работа пользователя с Вордом. Возможны два варианта:

— в момент выполнения Ворд запущен (имеются открытые пользователем файлы)

— в момент вызова Ворд не запущен

Так вот, нет, не влияет. Ворд запускается как новый экземпляр приложения, коллекция Documents запущенного приложения не содержит ни одной ссылки, т.е. доступа к ранее открытым документам через ссылку Word не получить.
Но, после запуска СОМ-Объекта, новые, открываемые пользователем, файлы могут открыться именно в этом экземпляре Ворда. Для пользователя разницы нет, но нам это следует, на всякий случай, учитывать.

Скрывает Ворд. Т.е. пользователь не будет видеть обрабатываемый файл в отдельном окне. Никакой особой пользы скрытие окна Ворд не несет. Если программа написана корректно, то пользователь не будет мешать программе, а программа не будет мешать пользователю, вне зависимости от того, видимо ли окно обрабатываемого файла. Естественно, при условии, что пользователь не начнет редактировать открытый документ.

Свойству Visible желательно присвоить одно из значений. В противном случае, СОМ-Объект Ворд откроется в скрытом режиме. Но если пользователь откроет какой-нибудь файл, то наш редактируемый файл может неожиданно стать видимым. С другой стороны, если пользователь успеет открыть свой файл после запуска СОМ-Объекта, но перед тем, как будет выполнено присвоение свойству значения Ложь , то открытый файл станет невидимым и недоступным для редактирования пользователем.

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

Перейдем к неправильной части примера

Открывает файл, в терминологии Ворд открытый файл называется «документ». Далее нужно получить ссылку на открытый документ, чтобы потом по этой ссылке можно было с ним работать. Вы можете найти такие примеры:

Ну что ж, разумно. Предполагаем, что открыт только наш документ, соответственно в коллекции Documents есть единственный элемент, значит этот элемент имеет индекс равный единице. Это работает, вероятность того, что пользователь успеет открыть файл в промежуток времени, между запуском СОМ-Объекта и этим присваиванием, ничтожно мала.

Ну что ж, разумно. Последний открытый в Ворде документ становится активным, можно получить на него ссылку и так. Это работает, вероятность того, что пользователь успеет открыть еще один документ после открытия нашего и до получения ссылки на него ничтожно мала.

Примеры чуточку безумные:

WTF? Хотя, безусловно, работает. С теми же оговорками, что и выше.

Как программировать неправильно, выяснили, теперь о том, как открывать документы правильно.

Для открытия документа можно использовать два метода коллекции Documents . Первый — Open() приведен выше, второй — Add() .

Метод Open() открывает файл для редактирования в Ворде, документ остается связанным с этим файлом — в заголовке окна Ворд указывается имя файла. Открыть можно любой файл, поддерживаемый Вордом, формат файла при редактировании не меняется. Например, открыли файл .rtf, отредактировали, сохранили, файл остался .rtf. Открывать непосредственно шаблон из папки, в которой хранятся шаблоны таким способом не стоит. Если что-то произойдет не так, например, сработает автосохранение в Ворде, шаблон будет испорчен. Сначала файл шаблона следует скопировать (при работе в клиент-серверном варианте это само собой разумеющиеся действие), а потом можно открывать.

Метод Add() создает новый документ на основании указанного шаблона. Шаблоном может быть любой файл, не обязательно родные для Ворда .doc или .docx или .dot. Открытый документ с файлом-шаблоном не связывается, в заголовке окна Ворд будет надпись «Документ1 — Word». При этом информация о формате исходного файла не сохраняется. Открывается просто документ Ворд, содержащий в себе всю информацию из указанного файла. При сохранении без явного указания типа файла он будет сохранен как .docx. Единственное исключение — документ, открытый на основе файла .doc, такие документы по умолчанию сохраняются в файлы .doc. Метод Add() можно использовать для создания документов на основании оригинала шаблона, шаблон повредить невозможно даже случайно.

Методы Open() и Add() являются функциями, т.е. возвращают значение. Причем возвращают они ссылку на новый документ. И ловить потом этот документ в коллекции Documents нам не нужно, ссылку можно сразу сохранить в переменной для дальнейшего использования. Таким образом, для открытия используются следующие команды:

Когда шаблон заполнен требуемым образом его необходимо сохранить. Самый простой вариант, если файл открыли методом Open() , для сохранения достаточно вызвать метод Save() :

Если же документ еще не связан с файлом, нужно вызвать метод SaveAs() :

Если формат по умолчанию нас не устраивает, вторым параметром метода можно явно задать тип файла:

Обратите внимание, не стоит указывать расширение файла. Ошибки не будет, если расширение будет указано явно, например так:

Имеется в виду, что не будет ошибки времени выполнения. Однако, приведенный выше пример идеологически неверен. Допустим, через некоторое время шаблон был заменен и файл шаблона получил расширение .docx. Для внесения изменений в программу нам потребуется две правки, первая в методе Add() , вторая в методе SaveAs() . В этом и проблема, код дублируется, одно изменение должно вносится в одном месте программы, а не в разных. Если расширение файла не будет указано, при сохранении будет добавлено расширение, соответствующее типу сохраняемого файла. Если же расширение будет указано неверно, т.е. не будет соответствовать типу файла, то. либо получаем ошибку времени исполнения, либо файл сохранится в формате, не соответствующем расширению (в зависимости от комбинации тип/расширение возможно и то и другое). Обе ситуации ненормальны. Ошибка времени выполнения, конечно, будет отловлена на этапе тестирования. А ошибка несоответствия расширения фактическому типу данных выйдет потом боком пользователю.

Завершение работы с СОМ-Объектом рекомендуют (неправильно) делать так:

На первый взгляд, можно и не заметить нолик в параметре метода Quit() . А он важен. Это просто константа wdDoNotSaveChanges :-). Закрыться-то Ворд закроется, вместе со всеми файлами, которые пользователь, возможно, открыл и редактирует.

Если мы исходим из предположения, а мы из него исходим, что пользователь может работать интерактивно со своими собственными файлами, которые могут быть открыты в том же экземпляре Ворда, что и наш СОМ-Объект, то торопиться принудительно выгонять пользователей и закрывать экземпляр приложения не стоит. Можно проверить, есть ли еще открытые документы, кроме нашего. Если есть, не закрывать экземпляр Ворда, пусть пользователь спокойно работает, если других документов нет — закрыть:

Не очень популярный, но иногда встречающийся способ.

Сначала в документ добавляются пользовательские свойства. Для Ворда 2016 это делается так:

Документ
имя файла заблокирована для редактирования другим пользователем. Чтобы открыть копию документа только для чтения, нажмите.

где
имя файла — имя документа, который вы пытались открыть.

Причина

Это может происходить, если программа Word определит, что уже существует файл владельца для документа. Это может произойти из-за одного или нескольких следующих условий:

Word был закрыт неправильно и, таким образом, не был удален файл владельца.

Второй экземпляр Word выполняется в фоновом режиме с уже открытым документом.

Документ является совместно используемым в сети, и он открыт у другого пользователя.

Решение

Чтобы устранить эту проблему, нужно сначала убедиться, что другой пользователь в сети не открыл этот документ. Если документ используется, откройте документ только для чтения. Если он не используется, закройте все экземпляры приложения Word и затем удалите файл владельца. Чтобы сделать это, выполните следующие действия.

Примечание: поскольку существует несколько версий Microsoft Windows, следующие действия могут отличаться на вашем компьютере. Если это так, обратитесь к документации продукта для выполнения этих действий.

Закройте все экземпляры приложения Word. Чтобы сделать это, выполните следующие действия.

Сохраните результаты работы и закройте все программы.

Нажмите сочетание клавиш CTRL + ALT + DELETE, чтобы открыть диалоговое окно Безопасность Windows .

Щелкните Winword.exeи нажмите кнопку Завершить процесс.

В диалоговом окне Предупреждение диспетчера задач нажмите кнопку Да.

Повторите действия d и e для каждого вхождения Winword.exe.

В меню файл щелкните Завершение диспетчера задач.

Удалите файл владельца.

Файл владельца находится в той же папке, что и документ, который вы пытались открыть. Имя владельца файла используется следующее соглашение: он начинается с тильды (

), следуют знак доллара ($), следуют в конце имени файла. Расширение. doc. Например, файл владельца для Document.doc с именем

Запустите программу Word. Если Word запрашивает, нужно ли загружать изменения, внесенные в Global или шаблона Normal.dot, нажмите кнопку Нет.

Дополнительные сведения

При открытии сохраненного ранее документа Word, Word создает файл владельца. Файл владельца, является временной и сохраняет имя пользователя, который открывает документ.

Ссылки

Дополнительные сведения о временных файлов Word щелкните следующий номер статьи базы знаний Майкрософт:

Для получения общих сведений, таких как имя автора, имя файла, дата или путь к файлу, выполните следующие действия:

Дважды щелкните его.

Выберите сведения о документеи выберите нужные сведения.

Лента "Заглавная" с выделенной ссылкой "Сведения о документе"

Примечание: Выберите Свойство документа, чтобы выбрать дополнительные сведения, такие как название, компания или тема.

Для выхода нажмите кнопку Закрыть окно колонтитулов или клавишу ESC.

Использование кодов полей

Если вам не удалось найти нужные сведения, например размер файла или сведения о том, кем он в последний раз был сохранен, можно использовать коды полей для добавления различных свойств документа.

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

На вкладке Вставка нажмите кнопку Верхний колонтитул или Нижний колонтитул.

Выберите Изменить header или Edit Footer.

Выберите «Быстрые части»и «Поле».

Меню QuickParts с выделенной ссылкой "Поля"

В списке Имена полей выберите нужное поле (например, FileName, Date, Author или Title) и в разделе Свойства поля выберите нужный формат.

Категории и свойства выбора полей

Если свойство поля имеет дополнительные параметры, выберите любой из них в разделе Параметры поля.

Раздел параметров кода поля

Нажмите ОК.

Для выхода нажмите кнопку Закрыть окно колонтитулов или клавишу ESC.

Word в Интернете не поддерживает добавление имен файлов и других свойств документа в header or footer.

Выберите Открыть в Word, чтобы открыть документ в настольной версии Word, если он у вас есть, и следуйте этим Windows вкладке.

Читайте также:

      

  • Программа на пк для сканирования чеков
  •   

  • Дискорд не видно сообщений бота
  •   

  • 1с не срабатывает присозданиинасервере
  •   

  • Acer z630 как прошить
  •   

  • Совместимость версий visual studio

По предложению @Adam и @ Lưu Vĩnh Phúc я создал следующий макрос, который выполняет то, что вы просили. Обратите внимание, что это удалит любую историю, связанную с файлом.

      Sub RenameActiveFile()
    '
    ' Renames the current file without closing the document (assuming file has already been saved)
    '  (Actually, saves with new name and deletes previous, so history will be lost).
    '
    Dim strFileFullName, strFileName, strNewName As String
    Dim res As VbMsgBoxResult

    ' Get current name:
    strFileFullName = ActiveDocument.FullName               'for Word docs
    'strFileFullName = ActiveWorkbook.FullName               'for Excel docs
    'strFileFullName = Application.ActivePresentation.FullName       'for Powerpoint presentations*
    If (InStr(strFileFullName, ".") = 0) Then
        res = MsgBox("File has not been saved. Can't rename it.", , "Rename File")
        Exit Sub
    End If
    strFileName = Right(strFileFullName, Len(strFileFullName) - InStrRev(strFileFullName, "")) 'strip path
    strFileName = Left(strFileName, (InStr(strFileName, ".") - 1))  ' strip extension

    ' Prompt for new name:
    strNewName = InputBox("Rename this file to:", "Rename File", strFileName)
    If (strNewName = "") Or (strNewName = strFileName) Then ' (Check whether user cancelled)
        Exit Sub
    End If

    ' Save file with new name:
    ActiveDocument.SaveAs2 FileName:=strNewName             'for Word docs
    'ActiveWorkbook.SaveAs2 FileName:=strNewName            'for Excel docs
    'Application.ActivePresentation.SaveAs FileName:=strNewName      'for Powerpoint presentations*

    ' Delete old file:
    With New FileSystemObject   ' (this line requires: Tools->References->Microsoft scripting runtime)
        If .FileExists(strFileFullName) Then
            .DeleteFile strFileFullName
        End If
    End With
End Sub

* Примечание: хотя этот макрос работает с Powerpoint (с изменениями, отмеченными выше), PowerPoint не может сохранить его глобально.

На чтение 10 мин. Просмотров 204 Опубликовано 23.02.2021

Я просто задаю этот вопрос, поскольку не верю, что после стольких версий Word его не существовало.

Обычно, когда я работаю над документом, я понимаю Мне нужно переименовать его, мне нужно закрыть документ, перейти в проводник, затем переименовать его, а затем снова открыть.

Это процедура, которая настолько укоренилась в моем образце использования, что До сих пор я не понимал, что мне действительно нужно открывать и закрывать несколько окон/приложений и т. Д., Просто чтобы переименовать файл. Конечно, сейчас 2012 год, я смогу сделать такую ​​простую вещь несколькими щелчками мыши, верно?

Так есть ли способ просто переименовать имя файла в слово/excel/ офисный документ, не закрывая его сначала?


Word открывает документы в эксклюзивном режиме AFAIK, поэтому это блокирует файлы и предотвращает доступ других программы, пока блокировка не будет снята путем закрытия файлов или самого Word. Я не думаю, что предоставление общего доступа к документам – это работоспособное решение, иначе оно наверняка было бы реализовано давно, если бы имело смысл.


Да, это возможно!

По крайней мере, на Mac (OS X 10.8.5). Просто Cmd + щелкните имя файла в верхней части открытого документа Office, который вы хотите переименовать. Затем вы увидите путь, по которому находится файл. Затем вы нажимаете на имя папки прямо под именем файла. Затем имя появляется на экране Finder, где вы можете изменить его имя по своему усмотрению.

Таким образом, не нужно ни закрывать файл, ни использовать «сохранить как» и удалять первый файл из средства поиска! (Я не знаю, работает ли тот же или подобный трюк в Windows.)

отредактировано 12 ноября ’13 в 23:39

Jawa

3,39988 золотых знаков2828 серебряных знаков3535 бронзовых знаков

ответил 12 ноя ’13 в 23:17

  • Это также работает в Windows, используя Ctrl + щелчок, открывая небольшое всплывающее окно, где имя файла можно редактировать! Отличный совет, спасибо @frisbee! – bdforbes 5 мая ’20 в 22:54

добавить комментарий |


Да, это возможно!

По крайней мере, на Mac (OS X 10.8.5). Просто Cmd + щелкните имя файла в верхней части открытого документа Office, который вы хотите переименовать. Затем вы увидите путь, по которому находится файл. Затем вы нажимаете на имя папки прямо под именем файла.. Затем имя появляется на экране Finder, где вы можете изменить его имя по своему усмотрению.

Таким образом, не нужно ни закрывать файл, ни использовать «сохранить как» и удалять первый файл из средства поиска! (Я не знаю, работает ли тот же или подобный трюк в Windows.)


Вдохновленный предложениями @Adam и @ Lưu Vĩnh Phúc, я создал следующий макрос, который выполняет то, что вы просили. Обратите внимание, что при этом будет удалена вся история, связанная с файлом.

  Sub RenameActiveFile () '' Переименовывает текущий файл, не закрывая документ (при условии, что файл уже был сохранен) '(  Фактически, сохраняется с новым именем и удаляется предыдущее, поэтому история будет потеряна).  'Dim strFileFullName, strFileName, strNewName As String Dim res As VbMsgBoxResult' Получить текущее имя: strFileFullName = ActiveDocument.FullName 'для документов Word' strFileFullName = ActiveWorkbook.FullName 'для Excelresentation.  Если (InStr (strFileFullName, ".") = 0) Then res = MsgBox ("Файл не был сохранен. Невозможно переименовать его.",, "Rename File") Exit Sub End If strFileName = Right (strFileFullName, Len  (strFileFullName) - InStrRev (strFileFullName, "")) 'удалить путь strFileName = Left (strFileName, (InStr (strFileName, ".") - 1))' strip extension 'Запрос нового имени: strNewName = InputBox ("Rename  этот файл в: "," Rename File ", strFileName) If (strNewName =" ") Or (strNewName = strFileName) Then '(Проверить, отменен ли пользователь) Exit Sub End If' Сохранить файл с новым именем: ActiveDocument.SaveAs2 FileName:  = strNewName 'для документов Word' ActiveWorkbook.SaveAs2 FileName: = strNewName 'для документов Excel' Application.ActivePrese  ntation.SaveAs FileName: = strNewName 'для презентаций Powerpoint *' Удалить старый файл: с помощью New FileSystemObject '(для этой строки требуется: Tools-> References-> среда выполнения сценариев Microsoft) Если .FileExists (strFileFullName) Тогда .DeleteFile strFileFullName End If End WithEnd  Sub  

* Примечание: хотя этот макрос работает с Powerpoint (с изменениями, отмеченными выше), PowerPoint не может сохранить его глобально.

отредактировано 10 июля ’14, в 19:11

ответил 10 июля ’14 в 17:56


Вдохновленный предложениями @Adam и @ Lưu Vĩnh Phúc, я создал следующий макрос, который выполняет то, что вы просили. Обратите внимание, что при этом будет удалена вся история, связанная с файлом.

  Sub RenameActiveFile () '' Переименовывает текущий файл, не закрывая документ (при условии, что файл уже был сохранен) '(  Фактически, сохраняется с новым именем и удаляется предыдущее, поэтому история будет потеряна).  'Dim strFileFullName, strFileName, strNewName As String Dim res As VbMsgBoxResult' Получить текущее имя: strFileFullName = ActiveDocument.FullName 'для документов Word' strFileFullName = ActiveWorkbook.FullName 'для Excelresentation.  Если (InStr (strFileFullName, ".") = 0) Then res = MsgBox ("Файл не был сохранен. Невозможно переименовать его.",, "Rename File") Exit Sub End If strFileName = Right (strFileFullName, Len  (strFileFullName) - InStrRev (strFileFullName, "")) 'удалить путь strFileName = Left (strFileName, (InStr (strFileName, ".") - 1))' strip extension 'Запрос нового имени: strNewName = InputBox ("Rename  этот файл в: "," Rename File ", strFileName) If (strNewName =" ") Or (strNewName = strFileName) Then '(Проверить, отменен ли пользователь) Exit Sub End If' Сохранить файл с новым именем: ActiveDocument.SaveAs2 FileName:  = strNewName 'для документов Word' ActiveWorkbook.SaveAs2 FileName: = strNewName 'для документов Excel' Application.ActivePrese  ntation.SaveAs FileName: = strNewName 'для презентаций Powerpoint *' Удалить старый файл: с помощью New FileSystemObject '(для этой строки требуется: Tools-> References-> среда выполнения сценариев Microsoft) Если .FileExists (strFileFullName) Тогда .DeleteFile strFileFullName End If End WithEnd  Sub  

* Примечание: хотя этот макрос работает с Powerpoint (с изменениями, отмеченными выше), PowerPoint не может сохранить его глобально.


Microsoft добавила революционные новые функции в последней версии Word, предназначенной для тех, кто вас беспокоит –

Щелкните файл, а затем «Сохранить как»

ответил 12 декабря ’12 в 4:12

  • Я сомневаюсь, что это именно то, что искала OP. Сохранить как не переименовывает файл, а просто сохраняет новую копию под другим именем. – Николь Гамильтон, 12 дек. ’12 в 16:49

  • @Scandalist: что за сарказм? Я думал, что мой вопрос был вполне законным. Я не говорю, что это шоу-стоп, я просто говорю, что, как и все маленькие утомительные задачи, это требует времени и силы ума. Все офисные пакеты делают вашу работу более продуктивной, поэтому с точки зрения пользователя я не понимаю, почему это не было реализовано. – RoboShop, 12 дек. ’12 в 9:39

  • @RoboShop, честно говоря, если реальная проблема заключается в производительности, вы можете довольно легко написать макрос и добавить его на панель инструментов, которая запрашивает новое имя файла, сохраняет и закрывает активный документ, переименовывает документ и наконец открывает переименованный документ. Это позволяет решить поставленную задачу одним нажатием кнопки. – Адам 14 дек. ’12 в 13:22

  • это должно быть правильным ответом, если нужно переименовать файл при открытии. Просто сохраните как новое имя, а затем удалите старый файл – phuclv 13 ноя 2013 в 0:30

добавить комментарий |


Microsoft включила революционные новые функции в последнюю версию Word, предназначенную для тех, кто вас беспокоит –

Щелкните файл, а затем «Сохранить как»



Как переименовать несколько файлов, заменив слово в имени файла?

Заменить ACDC в AC-DC

Например, у нас есть эти файлы

ACDC – Rock N ‘Roll Ain’t Noise Pollution.xxx

ACDC – Rocker.xxx

ACDC – Shoot To Thrill.xxx

Я хочу, чтобы они стали:

AC-DC – Rock N ‘Roll Ain’t Noise Pollution.xxx

AC-DC – Rocker.xxx

AC-DC – Shoot To Thrill.xxx

Я знаю, что для этой операции используется sed или awk. Я ничего не могу найти в Google, поэтому прошу вашей помощи =) Не могли бы вы предоставить полную рабочую команду оболочки для этой задачи?

Отзыв: решение для пользователей OSX


  переименовать 's/ACDC/AC-DC/' * .xxx  

из man переименовать

  ОПИСАНИЕ «переименовать» переименовывает имена файлов, указанные в соответствии с правилом, указанным в качестве первого аргумента.  Аргумент perlexpr - это выражение Perl, которое, как ожидается, изменит строку $ _ в Perl, по крайней мере, для некоторых из указанных имен файлов.  Если данное имя файла не изменено выражением, оно не будет переименовано.  Если в командной строке не указаны имена файлов, имена файлов будут считываться через стандартный ввод.  

Например, чтобы переименовать все файлы, соответствующие “* .bak”, чтобы удалить расширение, вы может сказать

  переименовать 's/. bak $//' * .bak  

Чтобы перевести имена из верхнего регистра в нижний, вы должны использовать

  переименовать 'y/AZ/az/' *  

Этот ответ содержит хорошие части из всех других ответов, но не учитывает такую ​​ересь, как ls | при чтении .

Текущий каталог:

  для файла в ACDC * .xxx;  do mv "$ file" "$ {file//ACDC/AC-DC}" done  

Включая подкаталоги:

   находить .  -тип f -name "ACDC *" -print0 |  при чтении -r -d '' файл;  do mv "$ file" "$ {file//ACDC/AC-DC}" done  

Символы новой строки действительно вряд ли будут в имена файлов, так что это может быть проще при работе с именами, содержащими пробелы:

  find.  -тип f -имя "ACDC *" |  при чтении -r файл;  do mv "$ file" "$ {file//ACDC/AC-DC}" готово  

отредактировано 3 ноября 2014 г. в 17:37

ответил 30 января 2011 г. в 9:03


Этот ответ содержит хорошие части из всех других ответов, но не учитывает такую ​​ересь, как ls | при чтении .

Текущий каталог:

  для файла в ACDC * .xxx;  do mv "$ file" "$ {file//ACDC/AC-DC}" done  

Включая подкаталоги:

   находить. -тип f -name "ACDC *" -print0 |  при чтении -r -d '' файл;  do mv "$ file" "$ {file//ACDC/AC-DC}" done  

Символы новой строки действительно вряд ли будут в имена файлов, так что это может быть проще при работе с именами, содержащими пробелы:

  find.  -тип f -имя "ACDC *" |  при чтении -r файл;  do mv "$ file" "$ {file//ACDC/AC-DC}" готово  

Чтобы использовать версию переименования для util-linux, о которой говорил Фил (в Ubuntu это называется rename.ul ):

  переименовать ACDC AC-DC ACDC *  

или

  rename.ul ACDC AC-DC ACDC *  

ответил 30 января ’11 в 11:14

  • ваш вариант лучший =) так много дурацких статей в гугле о поиске и отправке и awk … об этой простой операции, для которой переименовывать утилиты egxist уже существует! – Holms 30 янв. ’11 в 15:23

добавить комментарий |


Чтобы использовать версию переименовать для утилиты util-linux, на которую ссылался Фил (в Ubuntu это называется rename.ul ):

  переименовать ACDC AC-DC ACDC *  

или

rename.ul ACDC AC-DC ACDC *  

Использование оболочки bash

  find.  -тип f -name "ACDC *" -print0 |  при чтении -d $ ' 0' fdo new = `echo" $ f "|  sed -e "s/ACDC/AC-DC/" `mv" $ f "" $ new "done  

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

ответил 30 января ’11 в 8:24


Использование оболочки bash

  find.  -тип f -name "ACDC *" -print0 |  при чтении -d $ ' 0' fdo new = `echo" $ f "|  sed -e "s/ACDC/AC-DC/" `mv" $ f "" $ new "done  

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


Зависит от вашей оболочки. В zsh я бы сделал следующее:

  для файла в ACDC * .xxx;  do mv "$ file" "$ (echo $ file | sed -e 's/ACDC/AC-DC/')" done  

Вероятно, не лучшее решение, но работает .


Зависит от вашей оболочки. В zsh я бы сделал следующее:

  для файла в ACDC * .xxx;  do mv "$ file" "$ (echo $ file | sed -e 's/ACDC/AC-DC/')" done  

Вероятно, не лучшее решение, но работает .


Использование bash:

  ls * .xxx |  пока читал fn;  do mv "$ {fn}" "$ {fn/ACDC/AC-DC}"; done  

Если у вас есть программа rename установлено:

  переименовать 's/ACDC/AC-DC/' * .xxx  

ответил 30 января ’11 в 8:16


Использование bash:

  ls * .xxx |  пока читал fn;  do mv "$ {fn}" "$ {fn/ACDC/AC-DC}"; done  

Если у вас есть программа rename установлено:

  переименовать 's/ACDC/AC-DC/' * .xxx  

На чтение 2 мин Опубликовано 17.10.2015

Имя файла по умолчанию в Word

Вероятно, Вы замечали, что при первом сохранении документа Word предлагает имя для файла в диалоговом окне Сохранение документа (Save As). Как правило, это имя складывается из слов первого абзаца. На самом деле, это второй из вариантов, которые Word предлагает в качестве имени файла.

Если Вы указали Заголовок (Title) в свойствах документа, то Word предложит его в качестве имени файла при первом сохранении документа. Например, на рисунке ниже в поле Заголовок (Title) мы указали заголовок данной статьи (английский вариант).

Имя файла по умолчанию в Word

При первом сохранении статьи в Word, текст, указанный в поле Заголовок (Title), будет предложен в качестве имени файла (см. рисунок ниже).

Имя файла по умолчанию в Word

Если Вы хотите настроить шаблонное имя для файла, которое будет использоваться для всех документов определённого типа, то можете создать шаблон для таких документов и задать ему свойство Заголовок (Title).

Замечание: Не нужно добавлять расширение .docx в поле Заголовок (Title). Word автоматически добавляет его к каждому имени файла.

Имя файла по умолчанию в Word

Когда Вы создаёте новый документ на основе этого шаблона …

Имя файла по умолчанию в Word

… и впервые сохраняете его, текст, содержащийся в поле Заголовок (Title) используется для создания имени файла.

Имя файла по умолчанию в Word

Вам остаётся лишь подкорректировать это имя для каждого сохраняемого документа.

Замечание: Если в Вашем документе совсем нет текста и в свойствах не заполнено поле Заголовок (Title), то Word создаст имя файла по шаблону ДокументX.docx (DocX.docx), где Х – это номер, который зависит от того, как много новых документов Вы создали в текущей сессии работы в Word. Если перезапустить Word, число сбросится до 1.

Оцените качество статьи. Нам важно ваше мнение:

Возможно, вы заметили, что при первом сохранении документа Word предлагает имя для файла в диалоговом окне «Сохранить как». Как правило, это название состоит из слов первого абзаца. По сути, это второй из вариантов, которые Word предлагает в качестве имени файла.

Если вы указали заголовок в свойствах документа, Word предложит его в качестве имени файла при первом сохранении документа. Например, на следующем рисунке в поле Название мы указываем название этой статьи (английская версия).

Имя файла по умолчанию в Word

При первом сохранении статьи в Word в качестве имени файла будет предложен текст, указанный в поле Название (см рис ниже).

Имя файла по умолчанию в Word

Если вы хотите задать имя шаблона для файла, который будет использоваться для всех документов определенного типа, вы можете создать шаблон для этих документов и установить для него свойство Заголовок).

Примечание. Вам не нужно добавлять расширение .docx в поле «Заголовок». Word автоматически добавляет его к каждому имени файла.

Имя файла по умолчанию в Word

Когда вы создаете новый документ на основе этого шаблона …

Имя файла по умолчанию в Word

. и сохраните его в первый раз, текст, содержащийся в поле Заголовок, используется для создания имени файла.

Имя файла по умолчанию в Word

Вам просто нужно исправить это имя для каждого сохраненного документа.

Примечание. Если в вашем документе нет текста и в свойствах не заполнено поле Название, Word создаст имя файла по шаблону DocumentX.docx (DocX.docx), где X — число в зависимости от количества новых документы, которые вы создали в текущем сеансе работы в Word. Если вы перезапустите Word, число будет сброшено до 1.

Понравилась статья? Поделить с друзьями:
  • В сельскохозяйственном кооперативе работают 10 сезонных рабочих собирают помидоры оплата труда excel
  • В правом верхнем углу любого окна microsoft word находятся кнопка развернуть
  • В самом низу диалогового окна excel располагается строка
  • В правом верхнем углу любого окна microsoft word находятся выберите один ответ
  • В результате сбоя компонент перестал работать правильно word