Working in Office 2007, I’d like to add a filename field in my document header. The document will later be a PDF, so I don’t want the extension.
I’ve played with Insert -> QuickParts -> Field, to no avail. I’ve got a gut feeling that it requires a formula…
Thanks in advance if you can help.
skaffman
397k96 gold badges815 silver badges768 bronze badges
asked Oct 13, 2010 at 6:30
Your feeling is quite right.
Insert > QuickParts > Field > FileName
is the way to go, but as you see from the screenshot below, you do not have the option to turn the file extension on or off.
To show or not to show (Shakespearean style) the extension is purely up to the Windows Explorer setting to show or hide known file extensions. So, either you change that setting or you need some code.
A very simple Macro would be the following:
Sub InsertCurrentFileName()
Selection.InsertBefore Text:=Left(ActiveDocument.Name, Len(ActiveDocument.Name) - 4)
End Sub
What it does is simply strip the last 4 characters of the «Filename string» e.g. «.doc» — if you safe a «.docx» the «.» would be preserved. Also this Macro would run once and you would need to run it again when the filename changes.
Maybe you could explain some more what you want to achieve with having the filename in the document header? Are you trying to use the filename in the document header to set some PDF property during conversion? Why not use the Document Title? Do you need the original filename in the PDF later — why?
Two more pages to help you with your problem (both relying on Macros…):
- insert filename without extension .doc using fields?
- Inserting a File Name without an Extension
answered Oct 13, 2010 at 8:00
Dennis GDennis G
21.3k19 gold badges96 silver badges133 bronze badges
1
add [Title] Instead of filename
and maybe add some of the Other Document Properties Listed
answered Mar 2, 2014 at 19:20
BigDoggBigDogg
711 silver badge1 bronze badge
Create a macro something like:
Dim f As String
f = Dir(ActiveDocument.FullName)
intPos = InStr(1, f, ".")
If intPos > 0 Then
f = Left(f, intPos - 1)
End If
doc.Variables("BaseFileName").Value = f
Insert a Field like:
Done.
answered May 27, 2016 at 12:50
slumtrimpetslumtrimpet
3,1292 gold badges31 silver badges43 bronze badges
Indeed there is no «basename only» option for the FileName field.
Long term: Feature request
For the long term I’ve made a feature request with Microsoft at:
https://office365.uservoice.com/forums/264636-general/suggestions/13860672-for-word-create-a-basename-only-field-option-for
I invite you, and others visiting this post, to up-vote that suggestion.
Short term workarounds
Macro (VBA code)
Writing a macro, as @DennisG has suggested, is probably the most convenient work around.
Custom property
But you may want to avoid associating any macro with your word document to avoid security issues (e.g. if you distribute your document). So another workaround is to create custom property FileBaseName
with a hard coded value «MyDocumentBaseName»:
Create the FileBaseName custom property and assign it your value:
- Open a blank document in MS Word.
- Save it as «MyTempReport.docx».
- In MS Word Menu with MyTempReport.docx open > File [tab] > Info > Properties: Click > Advanced Properties … > Custom [tab] …
- Type in «Name»: «FileBaseName»; «Value»: «MyTempReport».
Insert the custom document property, FileBaseName
, in your document:
- MS Word menu > Insert [tab] > Text [group] > Quick Parts > Field …
- From «Field Names» choose «DocProperty».
- From «Field Properties» > «Property»: Choose «FileBaseName» > OK.
You should now have «MyTempReport» inserted as a field in your document.
Limitations:
- If you rename your file this won’t be reflected in your
FileBaseName
field. Instead you’ll have to manually change theFileBaseName
property from Advanced Properties … (as above). - You’ll have to create this custom property in every particular document you want it in.
answered May 16, 2016 at 9:56
John BentleyJohn Bentley
1,6381 gold badge16 silver badges18 bronze badges
If, and only if, the file name will not change in length, you may change the font of the extension to be «Hidden»:
- to insert the field go to Insert » Quick Parts (Text) » Field…, then select «FileName» from the list (in category «Document Information») and ensure the check mark at Preserve formatting during updates is ticked (this appends the option
* MERGEFORMAT
to the field codes; when this is missing, the following Hidden font effect will disappear every time the field value becomes updated); - select the shown file name extension (including the
.
); - manoeuvre to Home » Font (arrow at lower left corner), then tick the check box Hidden;
I am using this method for files names like the following, where only the revision code may change:
ID_REV_some_descriptive_name.doc?
, whereREV
is just a single letter likeA
,B
,C
, etc.;
answered Jun 18, 2020 at 18:03
aschipflaschipfl
33.3k12 gold badges54 silver badges95 bronze badges
1
Insert the file name field as shown in the diagram above and save as filename. View in print preview mode and return to edit mode: filename should now show instead of Documentn
Once you have the file name you can format different parts with different colors: so change the color of the .extension to the background color of the document (white probably).
I did this in a footer so that the pdf version didn’t show ‘.docx’.
answered May 26, 2016 at 0:32
1
Just hide the file name extensions in Windows Explorer. After that reopen the document. Then export it. The name will not have the extension.
answered Jul 9, 2019 at 7:34
In order to have the document name automatically update in the fields, you need to add a little more code to your macro. This macro will check what the filename is every time you open the file and will update all the fields in which you want the filename to be seen.
Sub AutoOpen()
' AutoUpdate Macro which creates filename without extension and updates fields
Dim aStory As Range
Dim aField As Field
Dim fname As String
fname = ActiveDocument.Name
fname = Left(fname, Len(fname) - 5) 'removes the last five characters from the filename (.docm)
With ActiveDocument
.Variables("fname").Value = fname
End With
For Each aStory In ActiveDocument.StoryRanges 'updates all fields in the document when you open the file
For Each aField In aStory.Fields
aField.Update
Next aField
Next aStory
End Sub
After you create this macro, simply go back to the document:
-
select ‘Quick Parts’ in the ‘Insert’ tab, and click on ‘Field.’
-
In the Field options, select DocVariable, and type in fname into Field Properties and then click OK.
It will then insert your file name, sans extension, into your doc, updating every time you open the file, and display the new filename.
answered Sep 27, 2019 at 16:11
Обычно мы можем вставить имя файла или путь и имя файла в документ Word с помощью функции поля Filename, но это вставленное имя файла включает расширение файла docx или doc. Как вы могли вставить имя файла или путь и имя файла без расширения?
Вставьте путь к файлу и имя или имя файла без расширения, используя код VBA
Вставьте путь к файлу и имя или имя файла без расширения, используя код VBA
Чтобы вставить имя файла без расширения в документ Word, примените следующий код VBA:
1. Поместите курсор в то место, куда вы хотите вставить путь и имя файла без расширения.
2. Затем зажмите ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.
3. А затем нажмите Вставить > Модули, скопируйте и вставьте приведенный ниже код в открытый пустой модуль.
Код VBA: вставить путь и имя файла без расширения:
Sub InsertFileNameAndPath()
Dim xPathName As String
Dim xDotPos As Integer
With Application.ActiveDocument
If Len(.Path) = 0 Then .Save
xDotPos = VBA.InStrRev(.FullName, ".")
xPathName = VBA.Left(.FullName, xDotPos - 1)
End With
Application.Selection.TypeText xPathName
End Sub
4, Затем нажмите F5 ключ для запуска этого кода, а путь и имя файла были вставлены в документ без расширения, см. снимок экрана:
Внимание: Если вы просто хотите вставить в документ имя файла без расширения, вы должны применить этот код:
Код VBA: вставить только имя файла без расширения:
Sub InsertFileNameOnly()
Dim xPathName As String
Dim xDotPos As Integer
With Application.ActiveDocument
If Len(.Path) = 0 Then .Save
xDotPos = VBA.InStrRev(.Name, ".")
xPathName = VBA.Left(.Name, xDotPos - 1)
End With
Application.Selection.TypeText xPathName
End Sub
Рекомендуемые инструменты для повышения производительности Word
Kutools For Word — Более 100 расширенных функций для Word, сэкономьте 50% времени
- Сложные и повторяющиеся операции можно производить разово за секунды.
- Вставляйте сразу несколько изображений из папок в документ Word.
- Объединяйте и объединяйте несколько файлов Word из папок в одну в желаемом порядке.
- Разделите текущий документ на отдельные документы в соответствии с заголовком, разрывом раздела или другими критериями.
- Преобразование файлов между Doc и Docx, Docx и PDF, набор инструментов для общих преобразований и выбора и т. Д.
Комментарии (0)
Оценок пока нет. Оцените первым!
Работая в Office 2007, я хотел бы добавить поле имени файла в заголовок моего документа. Позже документ будет в формате PDF, поэтому я не хочу расширения.
Я играл с Вставка -> QuickParts -> Поле, но безрезультатно. У меня есть чувство, что это требует формулы…
Спасибо заранее, если вы можете помочь.
2010-10-13 06:30
5
ответов
Решение
Ваше чувство совершенно верно.
Insert > QuickParts > Field > FileName
это путь, но, как вы видите на скриншоте ниже, у вас нет возможности включить или выключить расширение файла.Чтобы показывать или не показывать (в стиле Шекспира), расширение полностью зависит от настроек Windows Explorer, чтобы показывать или скрывать известные расширения файлов. Итак, либо вы измените эту настройку, либо вам нужен код.
Очень простым макросом было бы следующее:
Sub InsertCurrentFileName()
Selection.InsertBefore Text:=Left(ActiveDocument.Name, Len(ActiveDocument.Name) - 4)
End Sub
Он просто удаляет последние 4 символа «строки имени файла», например «.doc» — если вы сохраните «.docx» в «.» будет сохранен. Также этот макрос будет запускаться один раз, и вам нужно будет запустить его снова, когда имя файла изменится.
Может быть, вы могли бы объяснить еще, чего вы хотите добиться, имея имя файла в заголовке документа? Вы пытаетесь использовать имя файла в заголовке документа, чтобы установить некоторые свойства PDF во время преобразования? Почему бы не использовать название документа? Вам нужно оригинальное имя файла в PDF позже — почему?
Еще две страницы, чтобы помочь вам с вашей проблемой (обе опираются на макросы…):
- вставить имя файла без расширения.doc, используя поля?
- Вставка имени файла без расширения
2010-10-13 08:00
Добавить [название] вместо имени файла и, возможно, добавить некоторые из других свойств документа в списке
2014-03-02 19:20
Создайте макрос что-то вроде:
Dim f As String
f = Dir(ActiveDocument.FullName)
intPos = InStr(1, f, ".")
If intPos > 0 Then
f = Left(f, intPos - 1)
End If
doc.Variables("BaseFileName").Value = f
Вставьте поле как:
Готово.
2016-05-27 12:50
Действительно, для поля FileName нет опции «только базовое имя».
Долгосрочный: запрос функции
В долгосрочной перспективе я отправил запрос в Microsoft по адресу https://office365.uservoice.com/forums/264636-general/suggestions/13860672-for-word-create-a-basename-only-field-option-for
Я приглашаю вас и других, посещающих этот пост, проголосовать за это предложение.
Краткосрочные обходные пути
Макрос (код VBA)
Написание макроса, как предположил @DennisG, возможно, наиболее удобное решение.
Собственная собственность
Но вы можете избежать ассоциирования любого макроса с вашим документом Word, чтобы избежать проблем с безопасностью (например, если вы распространяете документ). Итак, еще один обходной путь — создать собственное свойство FileBaseName
с жестко закодированным значением «MyDocumentBaseName»:
Создайте пользовательское свойство FileBaseName и присвойте ему свое значение:
- Откройте пустой документ в MS Word.
- Сохраните его как «MyTempReport.docx».
- В меню MS Word с MyTempReport.docx откройте> Файл [вкладка] > Информация> Свойства: щелкните> Дополнительные свойства… > Пользовательские [вкладка] …
- Введите «Имя»: «FileBaseName»; «Значение»: «MyTempReport».
Вставьте пользовательское свойство документа, FileBaseName
, в вашем документе:
- Меню MS Word> Вставить [вкладка] > Текст [группа] > Быстрые детали> Поле…
- Из «Имен полей» выберите «DocProperty».
- Из «Свойства поля» > «Свойство»: выберите «FileBaseName» > OK.
Теперь вы должны вставить «MyTempReport» в качестве поля в вашем документе.
Ограничения:
- Если вы переименуете свой файл, это не будет отражено в вашем
FileBaseName
поле. Вместо этого вам придется вручную изменитьFileBaseName
свойство от Advanced Properties … (как указано выше). - Вам нужно будет создать это пользовательское свойство в каждом конкретном документе, в котором вы хотите его использовать.
2016-05-16 09:56
Если и только если имя файла не изменится по длине, вы можете изменить шрифт расширения на «Скрытый»:
- чтобы вставить поле, выберите Вставить «Быстрые части (Текст)» Поле…, затем выберите «Имя файла» из списка (в категории «Информация о документе») и убедитесь, что установлен флажок Сохранять форматирование во время обновлений (это добавляет параметр
* MERGEFORMAT
к кодам полей; если он отсутствует, следующий эффект скрытого шрифта будет исчезать каждый раз, когда значение поля обновляется); - выберите отображаемое расширение имени файла (включая
.
); - перейдите на главную «Шрифт (стрелка в нижнем левом углу), затем установите флажок Скрытый;
Я использую этот метод для таких имен файлов, как следующие, где может изменяться только код версии:
ID_REV_some_descriptive_name.doc?
, гдеREV
это всего лишь одна буква вродеA
,B
,C
, так далее.;
2020-06-18 21:03
Вставьте поле имени файла, как показано на рисунке выше, и сохраните как имя файла. Просмотреть в режиме предварительного просмотра и вернуться в режим редактирования: теперь имя файла должно отображаться вместо Documentn
Если у вас есть имя файла, вы можете отформатировать разные части с разными цветами: измените цвет.extension на цвет фона документа (вероятно, белый).
Я сделал это в нижнем колонтитуле, чтобы в PDF-версии не отображалось «.docx».
2016-05-26 00:32
Чтобы имя документа автоматически обновлялось в полях, вам нужно добавить немного больше кода в свой макрос. Этот макрос будет проверять имя файла каждый раз, когда вы открываете файл, и обновляет все поля, в которых вы хотите, чтобы имя файла отображалось.
Sub AutoOpen()
' AutoUpdate Macro which creates filename without extension and updates fields
Dim aStory As Range
Dim aField As Field
Dim fname As String
fname = ActiveDocument.Name
fname = Left(fname, Len(fname) - 5) 'removes the last five characters from the filename (.docm)
With ActiveDocument
.Variables("fname").Value = fname
End With
For Each aStory In ActiveDocument.StoryRanges 'updates all fields in the document when you open the file
For Each aField In aStory.Fields
aField.Update
Next aField
Next aStory
End Sub
После создания этого макроса просто вернитесь к документу:
-
выберите «Быстрые части» на вкладке «Вставка» и нажмите «Поле».
-
В параметрах поля выберите DocVariable и введите fname в свойства поля, а затем нажмите кнопку ОК.
Затем он вставит ваше имя файла без расширения в ваш документ, обновляя каждый раз, когда вы открываете файл, и отобразит новое имя файла.
2019-09-27 19:11
Просто скройте расширения имен файлов в проводнике Windows. После этого снова откройте документ. Затем экспортируйте его. У имени не будет расширения.:)
2019-07-09 10:34
Работая в Office 2007, я хотел бы добавить поле имени файла в заголовок моего документа. Позже документ будет в формате PDF, поэтому мне не нужно расширение.
Я играл с Insert -> QuickParts -> Field, но безрезультатно. У меня интуиция подсказывает, что для этого нужна формула …
Спасибо заранее, если вы можете помочь.
8 ответов
Лучший ответ
Ваше чувство совершенно верно.
Insert > QuickParts > Field > FileName
— это правильный выбор, но, как видно из приведенного ниже снимка экрана, у вас нет возможности включить или отключить расширение файла. Отображать или не отображать (стиль Шекспира) расширение зависит только от настройки проводника Windows, чтобы отображать или скрывать известные расширения файлов. Итак, либо вы измените этот параметр, либо вам понадобится код.
Очень простой макрос будет следующим:
Sub InsertCurrentFileName()
Selection.InsertBefore Text:=Left(ActiveDocument.Name, Len(ActiveDocument.Name) - 4)
End Sub
Он просто удаляет последние 4 символа «строки имени файла», например. «.doc» — если вы сохраняете «.docx», то «.» будет сохранено. Также этот макрос запускается один раз, и вам нужно будет запустить его снова, когда имя файла изменится.
Может быть, вы могли бы еще немного объяснить, чего вы хотите достичь, указав имя файла в заголовке документа? Вы пытаетесь использовать имя файла в заголовке документа, чтобы установить какое-либо свойство PDF во время преобразования? Почему бы не использовать заголовок документа? Вам понадобится оригинальное имя файла в PDF позже — зачем?
Еще две страницы, которые помогут вам с вашей проблемой (обе полагаются на макросы …):
- вставить имя файла без расширения .doc, используя поля?
- Вставка имени файла без расширения
13
Dennis G
13 Окт 2010 в 12:00
Действительно, для поля FileName нет опции «только базовое имя».
Долгосрочный: запрос функции
В долгосрочной перспективе я обратился в Microsoft с запросом на добавление новых функций по адресу: https : //office365.uservoice.com/forums/264636-general/suggestions/13860672-for-word-create-a-basename-only-field-option-for
Я приглашаю вас и других, посещающих этот пост, проголосовать за это предложение.
Краткосрочные обходные пути
Макрос (код VBA)
Написание макроса, как предложил @DennisG, вероятно, является наиболее удобным решением.
Пользовательское свойство
Но вы можете захотеть не связывать какой-либо макрос с вашим текстовым документом, чтобы избежать проблем с безопасностью (например, если вы распространяете свой документ). Другим обходным решением является создание настраиваемого свойства FileBaseName
с жестко заданным значением MyDocumentBaseName:
Создайте настраиваемое свойство FileBaseName и присвойте ему свое значение:
- Откройте пустой документ в MS Word.
- Сохраните его как «MyTempReport.docx».
- В меню MS Word с MyTempReport.docx откройте> Файл [вкладка]> Информация> Свойства: щелкните> Дополнительные свойства …> Пользовательский [вкладка] …
- Введите «Имя»: «FileBaseName»; «Значение»: «MyTempReport».
Вставьте пользовательское свойство документа FileBaseName
в свой документ:
- Меню MS Word> Вставить [вкладка]> Текст [группа]> Быстрые части> Поле …
- В «Имена полей» выберите «Свойства документа».
- В «Свойства поля»> «Свойство»: выберите «FileBaseName»> «ОК».
Теперь вы должны вставить «MyTempReport» в качестве поля в ваш документ.
Ограничения:
- Если вы переименуете файл, это не будет отражено в вашем поле
FileBaseName
. Вместо этого вам придется вручную изменить свойствоFileBaseName
из дополнительных свойств … (как указано выше). - Вам нужно будет создать это настраиваемое свойство в каждом конкретном документе, в котором оно вам нужно.
3
John Bentley
16 Май 2016 в 12:56
Создайте макрос примерно так:
Dim f As String
f = Dir(ActiveDocument.FullName)
intPos = InStr(1, f, ".")
If intPos > 0 Then
f = Left(f, intPos - 1)
End If
doc.Variables("BaseFileName").Value = f
Вставьте поле вроде:
Выполнено.
3
slumtrimpet
27 Май 2016 в 15:50
Если и только если имя файла не изменится по длине, вы можете изменить шрифт расширения на «Скрытый»:
- чтобы вставить поле, перейдите в Вставить »Быстрые части (Текст)» Поле… , затем выберите «Имя файла» из списка (в категории «Информация о документе») и установите флажок рядом с Сохранить форматирование во время обновлений отмечено галочкой (это добавляет параметр
* MERGEFORMAT
к кодам полей; если он отсутствует, следующий эффект скрытого шрифта будет исчезать каждый раз, когда значение поля обновляется); - выберите отображаемое расширение имени файла (включая
.
); - перейдите к Главная »Шрифт (стрелка в нижнем левом углу) , затем установите флажок Скрытый ;
Я использую этот метод для таких имен файлов, как следующие, где может изменяться только код версии:
ID_REV_some_descriptive_name.doc?
, гдеREV
— это всего лишь одна буква, напримерA
,B
,C
и т. Д .;
3
aschipfl
19 Июн 2020 в 17:46
Вставьте поле имени файла, как показано на схеме выше, и сохраните как имя файла. Просмотрите в режиме предварительного просмотра печати и вернитесь в режим редактирования: теперь должно отображаться имя файла вместо документа n
Когда у вас есть имя файла, вы можете форматировать разные части с разными цветами: поэтому измените цвет расширения. На цвет фона документа (возможно, белый).
Я сделал это в нижнем колонтитуле, чтобы версия pdf не показывала ‘.docx’.
1
Rob
26 Май 2016 в 03:43
Чтобы имя документа автоматически обновлялось в полях, вам нужно добавить немного больше кода в свой макрос. Этот макрос будет проверять имя файла каждый раз, когда вы открываете файл, и обновляет все поля, в которых вы хотите, чтобы имя файла отображалось.
Sub AutoOpen()
' AutoUpdate Macro which creates filename without extension and updates fields
Dim aStory As Range
Dim aField As Field
Dim fname As String
fname = ActiveDocument.Name
fname = Left(fname, Len(fname) - 5) 'removes the last five characters from the filename (.docm)
With ActiveDocument
.Variables("fname").Value = fname
End With
For Each aStory In ActiveDocument.StoryRanges 'updates all fields in the document when you open the file
For Each aField In aStory.Fields
aField.Update
Next aField
Next aStory
End Sub
После создания этого макроса просто вернитесь к документу:
-
выберите «Быстрые части» на вкладке «Вставка» и нажмите «Поле».
-
В параметрах поля выберите DocVariable и введите fname в свойства поля, а затем нажмите кнопку ОК.
Затем он вставит ваше имя файла без расширения в ваш документ, обновляя каждый раз, когда вы открываете файл, и отобразит новое имя файла.
0
Trenton McKinney
27 Сен 2019 в 19:35
Добавьте [Название] вместо filename и, возможно, добавить некоторые из других свойств документа в списке
7
BigDogg
2 Мар 2014 в 23:20
Просто скройте расширения имен файлов в проводнике Windows. После этого снова откройте документ. Затем экспортируйте его. У имени не будет расширения.
0
Akshay James
9 Июл 2019 в 10:34
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Получение имени текущего файла без расширения
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщений [ 1 ]
1 22.06.2015 09:30:40
- Alex_Gur
- Модератор
- Неактивен
- Откуда: Москва
- Зарегистрирован: 28.07.2011
- Сообщений: 2,758
- Поблагодарили: 492
Тема: Получение имени текущего файла без расширения
Получение имени текущего файла без расширения
Sub FileName()
Dim Name1 As String 'Имя файла
Dim String1 As String 'Имя файла без расширения
Dim x As Integer 'Номер знака последнего вхождения точки в строку
Name1 = ActiveDocument.Name
x = InStrRev(Name1, ".") 'Ищет номер знака последнего вхождения точки в строку
String1 = Left(Name1, x - 1) 'Отсекает расширение
MsgBox String1
End Sub
Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк — 41001162202962; на WebMoney — R581830807057.
Сообщений [ 1 ]
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Похожие темы
- Макрос для вставки имени файла в название документа
- Шаблон с обновляемым полем полного имени файла
- Автоматическое назначение имени файла по ключевому слову в документе
- Генератор модуля расширения клавиатуры для Word
- Выделение текущего абзаца
- При смени расширения docm на dotm слетают экспресс-блоки
- Установка текущего года в Word
- Как применить стиль текущего абзаца
Получение имени текущего файла без расширения
Если вы давно работаете с приложением Microsoft Word, то наверняка сталкивались с тем, что многие его вкладки и функции вами не используются и не совсем понятно, как они работают и для чего предназначены. На портале о Microsoft Office Word вы узнаете про: показать измененный документ ворд.
Познакомить вас со всеми секретами программы могут на форуме сайта Ворд Эксперт, который и посвящен обсуждению именно тонких настроек и функций. На портале о Microsoft Office Word вы узнаете про: запись макросов в word 2010.
Здесь есть возможность разобраться с шаблонами Ворда, написанием макросов, назначением горячих клавиш, различными способами ускорения и автоматизации операций редактирования и форматирования. На портале о Microsoft Office Word вы узнаете про: гденаходяться указатели в ворде зщувер поинт 2007 год на гиперсылку?.
На Ворд Эксперт вам предложат также готовые решения многих задач или оставить свою заявку на разработку. Наш сайт о Microsoft Office Word даст ответ про: kak dobavit doc v html.
albert123 Пользователь Сообщений: 16 |
Доброго дня. Раньше встречались такие решения, тогда еще не было надобности, а сейчас хотел сделать но не мог найти пример. И так. Имеется файл по адресу D:Рабочий стол201912_ДЕКАБРЬфайл1.xlsb
Эх если бы нашел ответ на свое решение то вас бы не потревожил. Изменено: albert123 — 16.12.2019 20:06:19 |
Alemox Пользователь Сообщений: 2183 |
#2 16.12.2019 20:16:39 Имя файла без расширения:
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
||
albert123 Пользователь Сообщений: 16 |
Alemox,а обязательно надо будет писать адреса? просто там файлов в среднем 50, каждому прописывать, замучаюсь |
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#4 16.12.2019 20:25:34 А так?
А так ? |
||
БМВ Модератор Сообщений: 21378 Excel 2013, 2016 |
#5 16.12.2019 20:29:38
ну если гранатомет расчехлять то
Изменено: БМВ — 16.12.2019 20:37:38 По вопросам из тем форума, личку не читаю. |
||||||||||||||||
Ігор Гончаренко Пользователь Сообщений: 13746 |
#6 16.12.2019 20:36:42 Выполните Test
Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
albert123 Пользователь Сообщений: 16 |
#7 16.12.2019 20:57:34 Спасибо вам большое |
работая в Office 2007, я хотел бы добавить поле имени файла в заголовок документа. Документ позже будет PDF, поэтому я не хочу расширения.
Я играл с Insert — > QuickParts — > поле, безрезультатно. У меня такое чувство, что для этого нужна формула…
заранее спасибо, если вы можете помочь.
5 ответов
ваше чувство совершенно правильно.
Insert > QuickParts > Field > FileName
это путь, но, как вы видите на скриншоте ниже, у вас нет возможности включить или выключить расширение файла.
Чтобы показать или не показать (шекспировский стиль) расширение чисто до настройки Проводника Windows, чтобы показать или скрыть известные расширения файлов. Итак, либо вы измените эту настройку, либо вам нужен код.
очень простой макрос будет следующим:
Sub InsertCurrentFileName()
Selection.InsertBefore Text:=Left(ActiveDocument.Name, Len(ActiveDocument.Name) - 4)
End Sub
что это does просто удаляет последние 4 символа «строки имени файла», например «.doc «- if you safe a».docx «the».»будут сохранены. Также этот макрос будет работать один раз, и вам нужно будет запустить его снова, когда имя файла изменится.
может быть, вы могли бы объяснить, что вы хотите достичь с именем файла в заголовке документа? Вы пытаетесь использовать имя файла в заголовке документа для установки некоторого свойства PDF во время преобразования? Почему бы не использовать заголовок документа? Вам нужно исходное имя файла в PDF позже — почему?
еще две страницы, чтобы помочь вам с вашей проблемой (оба полагаются на макросы…):
- вставить имя файла без расширения .doc с использованием полей?
- вставка имени файла без расширения
добавить [Title] вместо имя файла
и, может быть, добавить некоторые из других Свойства Документа перечислил
создать макрос что-то вроде:
Dim f As String
f = Dir(ActiveDocument.FullName)
intPos = InStr(1, f, ".")
If intPos > 0 Then
f = Left(f, intPos - 1)
End If
doc.Variables("BaseFileName").Value = f
вставить поле типа:
сделано.
действительно, для поля FileName нет опции» только базовое имя».
долгосрочный: запрос функции
в долгосрочной перспективе я сделал запрос с Microsoft в:
https://office365.uservoice.com/forums/264636-general/suggestions/13860672-for-word-create-a-basename-only-field-option-for
Я приглашаю вас и других, посещающих этот пост, проголосовать за это предложение.
краткосрочного решения
макро (Код VBA)
написание макроса, как предположил @DennisG, вероятно, является наиболее удобной работой.
свойства
но вы можете не связывать макрос с документом word, чтобы избежать проблем с безопасностью (например, если вы распространяете документ). Таким образом, другим обходным путем является создание пользовательского свойства FileBaseName
с жестко закодированным значением «MyDocumentBaseName»:
создайте пользовательское свойство FileBaseName и назначьте его значение:
- откройте пустой документ в MS Word.
- сохраните его как » MyTempReport.файлы DOCX».
- в меню MS Word с MyTempReport.docx открыть > файл [вкладка] > информация > свойства: нажмите > Дополнительные свойства … > Пользовательский [tab]…
- введите «Name»: «FileBaseName»; «Value»: «MyTempReport».
вставьте свойство пользовательского документа,FileBaseName
в своем документе:
- меню MS Word > вставить [вкладка] > текст [группа] > быстрые детали > поле …
- из «имена полей» выберите «DocProperty».
- из поля «свойства» > «свойства»: выбрать «FileBaseName» > «ОК».
вы теперь должны иметь «MyTempReport» вставить как поле в документе.
ограничения:
- если вы переименуете файл это не отразиться в вашем
вставьте поле Имя файла, как показано на диаграмме выше, и сохраните его как имя файла. Просмотр в режиме предварительного просмотра и возврат в режим редактирования: имя файла теперь должно отображаться вместо Documentn
Как только у вас есть имя файла, вы можете форматировать разные части с разными цветами: поэтому измените цвет .расширение до цвета фона документа (возможно, белого).
Я сделал это в нижнем колонтитуле, чтобы версия pdf не отображалась».файлы DOCX’.
0 / 0 / 0 Регистрация: 07.10.2009 Сообщений: 3 |
|
1 |
|
Колонтитул — полное имя файла07.10.2009, 11:25. Показов 22753. Ответов 17
Здравствуйте!
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
07.10.2009, 11:25 |
17 |
2832 / 1641 / 254 Регистрация: 03.12.2007 Сообщений: 4,222 |
|
07.10.2009, 14:22 |
2 |
Вставка (или в 2007-м где-то в другом месте) -> Поле -> FileName.
0 |
Заблокирован |
|
11.10.2009, 11:36 |
3 |
Может я что-нибудь не понимаю, но сам недавно столкнулся со вставкой Полей в Word 2007. Вставляется поле очень сложно: левый верхний угол — кнопка круглая — Параметры Word — Настройка — Вкладка «Вставка» — Вставить поле — Добавить. Результатом этих действий будет появление кнопки Вставка поля в самой верхней строке монитора.
1 |
0 / 0 / 0 Регистрация: 07.10.2009 Сообщений: 3 |
|
16.10.2009, 11:16 [ТС] |
4 |
спасибо, большое, попробую Добавлено через 23 минуты
0 |
1852 / 1174 / 190 Регистрация: 27.03.2009 Сообщений: 4,514 |
|
16.10.2009, 11:27 |
5 |
посмотри если в Word 2007 Экспресс-блоки-О документе-File name и проставь галочку Добавить путь к имени файла Добавлено через 3 минуты
0 |
Заблокирован |
|
16.10.2009, 13:06 |
6 |
ОльгаВС
0 |
0 / 0 / 0 Регистрация: 07.10.2009 Сообщений: 3 |
|
16.10.2009, 13:29 [ТС] |
7 |
Огромное спасибо, «галочку» поставила, все получилось
0 |
0 / 0 / 0 Регистрация: 01.02.2012 Сообщений: 3 |
|
01.02.2012, 12:19 |
8 |
а как сделать что бы была кнопка на панели вставлять такой колонтитул или нет?
0 |
1300 / 402 / 22 Регистрация: 21.10.2011 Сообщений: 1,285 |
|
01.02.2012, 14:34 |
9 |
lukum,
0 |
0 / 0 / 0 Регистрация: 01.02.2012 Сообщений: 3 |
|
01.02.2012, 16:23 |
10 |
Процедура описанная выше работает)
0 |
1300 / 402 / 22 Регистрация: 21.10.2011 Сообщений: 1,285 |
|
01.02.2012, 16:25 |
11 |
lukum,
0 |
0 / 0 / 0 Регистрация: 01.02.2012 Сообщений: 3 |
|
01.02.2012, 17:49 |
12 |
Спасибо. Придется осваивать макросы
0 |
Busine2012 1300 / 402 / 22 Регистрация: 21.10.2011 Сообщений: 1,285 |
||||||||
01.02.2012, 18:28 |
13 |
|||||||
lukum,
В Word 2007 вы не можете ничего поместить вручную на Ленту (можно с помощью кода только).
На Панели инструментов появятся кнопки, вызывающие макросы. Примечание:
0 |
71 / 72 / 23 Регистрация: 14.10.2013 Сообщений: 534 |
|
09.07.2014, 15:27 |
14 |
Имя файла то у меня с путём нормально вставляются. Но они получаются не динамические. Т.е. при перемещении документы, путь и имя остаются неизменными. Как это решить?
0 |
5942 / 3154 / 698 Регистрация: 23.11.2010 Сообщений: 10,524 |
|
09.07.2014, 15:34 |
15 |
Обновлять Поле тоже не помогает?
0 |
71 / 72 / 23 Регистрация: 14.10.2013 Сообщений: 534 |
|
10.07.2014, 15:21 |
16 |
Fairuza, нет
0 |
5942 / 3154 / 698 Регистрация: 23.11.2010 Сообщений: 10,524 |
|
10.07.2014, 16:39 |
17 |
FaTaL-CS, сделала Поле с полным путем, переместила, нажала Обновить — поменялось. Приложите файл посмотреть
0 |
0 / 0 / 0 Регистрация: 20.01.2016 Сообщений: 2 |
|
21.01.2016, 09:51 |
18 |
Доброго дня.
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
21.01.2016, 09:51 |
18 |
Колонтитул — полное имя файла
Помощь в написании контрольных, курсовых и дипломных работ здесь.
полное имя документа вместе с расположением
Мне нужно выставить чтобы во всех документах писало полное имя документа вместе с расположением.
Дано полное имя файла, т.е путь к файлу, имя и расширение. Выделить из строки только имя первого католога
Помогите пожалуйста. Залание: Дано полное имя файла, т.е путь к файлу, имя и расширение.
Дана строка содержащая полное имя файла.Выделить из этой строки только имя файла без расширения
1.Дан символ С.Вывести его код (то есть номер в кодовой таблице) 2. Дан символ С.Вывести два.
Дана строка, содержащая полное имя файла. Выделить из этой строки имя и расширение файла
дана строка, содержащая полное имя файла, т.е. имя диска, список каналов(путь), собственно имя и.
спасибо, большое, попробую
Добавлено через 23 минуты
FileName — поставить полуилось, но это только название файла, а мне еще нужно на каком диске он находиться и в какой папке, то есть полный путь к файлу
посмотри если в Word 2007 Экспресс-блоки-О документе-File name и проставь галочку Добавить путь к имени файла
Добавлено через 3 минуты
если в 2000 Вставка-Поле- Сведения о документе-filename и проставь ключи типа
FILENAME * Caps p — это будет имя файла и полным путем начиная с большой буквы
В Word 2007 вы не можете ничего поместить вручную на Ленту (можно с помощью кода только).
Но можете поместить кнопки, вызывающие макросы, на Панель инструментов.
Чтобы сделать кнопки на Панели инструментов для макросов:
- Круглая кнопка — Параметры Word — Основные — Показывать вкладку «Разработчик» на ленте — OK;
- вкладка Разработчик — Visual Basic. Откроется программа Microsoft Visual Basic;
- щ. правой кн. мыши по Normal — Insert Module. Справа начнёт мигать курсор;
- скопируйте с форума коды, которые я выложил, и вставьте их туда, где мигает курсор;
- нажмите Сохранить и закройте программу Microsoft Visual Basic;
- в программе Word: щ. правой кн. мыши по Панели инструментов — Настройка панели быстрого доступа. ;
- Выбрать команды из: Макросы — наведите курсор на один любой макрос и подождите несколько секунд; появится всплывающая подсказка. Нас интересуют макросы: Процедура1 и Процедура2. Переместите их вправо, нажав кнопку Добавить>> — OK.
На Панели инструментов появятся кнопки, вызывающие макросы.
Примечание:
часть кода я узнал, использовав макрорекордер.
Как добавить путь к документу в колонтитул MS Word
Текстовые документы на компьютере – как их трудно найти и как просто создать ненужный дубль!
Удобно, когда вы точно знаете, где лежит нужный документ MS Word на компьютере. Однако как показывает практика, создать идеальную систему хранения невозможно – неизбежно в ней появляются дубли, одни и те же файлы с разными именами, напротив, файлы называющиеся одинаково, но имеющие разное содержимое и т.п.
К счастью, в MS Word есть одна, хотя и очень простая, но в то же время очень полезная возможность – можно вносить в колонтитулы документа не только номера страниц, но и полный путь до файла, который в данный момент открыт, а также имя этого файла.
- Если вы держите в руках распечатанный файл и не знаете, где на компьютере искать его электронную версию…
- Если у вас есть куча файлов с одинаковыми названиями (например типовые отчеты лежащие в папках по месяцам) и вы не уверены, что в данный момент у вас открыт именно нужный файл…
- Если вы просто не смогли разыскать в какую папку положили открытый документ, но при этом не хотите сохранять его по-новой, что вызовет появление дубликата…
MS Word позволит покончить с этими недоразумениями буквально в пару щелчков мыши.
Как вставить имя текстового файла и путь до него в документ MS Word
Откройте документ MS Word и дважды щелкните левой кнопкой мыши по пустому полю в самом верху или в самом низу страницы. Документ окажется разделен пунктирной линией, рядом с которой появится надпись “Верхний колонтитул”. Тоже самое можно сделать никуда не щелкая, а перейдя на вкладку “Вставка” и выбрав инструмент “Верхний колонтитул” (или “Нижний колонтитул”) в группе Колонтитулы.
Создаем колонтитул в MS Word в который и будет вставлен путь к этому файлу
Как только колонтитул активирован, на панели вкладок автоматически станет активной вкладка “Конструктор”. Обратите внимание на её левую часть, где находится группа инструментов “Вставка”.
Нас интересует инструмент “Сведения о документе” – нажмите на него и увидите дополнительные настройки.
- Выберите “Имя файла” и в колонтитуле появится имя файла, под которым документ сохранен на диске.
- Выберите “Путь к файлу” и в колонтитуле появится полный путь к текущему документу в файловой системе этого компьютера.
Вставляем в текстовый документ сведения о файле: путь к нему и его имя.
Колонтитулы будут сохранены в оформлении документа и будут видны при печати. Зная название файла и место его расположения, вы без труда разберетесь с тем, как его найти при необходимости.
А теперь просто задайте необходимое форматирование созданному колонтитулу, и щелкните мышью два раза на свободном месте документа, чтобы закрыть его и перейти к набору текста.
Я немного отформатировал верхний колонтитул, уменьшив размер служебной информации. Теперь документ точно не потеряется.
Статьи из блога
Один из читателей сайта задал вопрос:
Как настроить Word, чтобы при распечатке в нижнем колонтитуле указавался путь и имя файла?
Это достаточно легко сделать. Нужно просто вставить в нижний колонтитул специальное поле FileName с ключом p , а потом отправить документ на печать.
О том, как вставить поля в колонтитулы, я подробно описал в заметке Как вставить название главы в колонтитул .
Чтобы вставить поле FileName с включением пути к файлу, в меню Вставка выберите команду Поле , в открывшемся окне выберите категорию О документе , а в списке поля выберите поле FileName .
Далее последовательно нажмите кнопку коды поля , а затем кнопку Параметры . Откроется диалоговое окно Параметры поля :
Перейдите на вкладку Ключи , выберите строку с ключом p и нажмите кнопку Добавить . Нажатием кнопки ОК закройте все окна. Путь к файлу будет вставлен в колонтитул.
Если вы работаете в редакторе Word 2007, то на вкладке Вставка в группе команд Текст нажмите кнопку Экспресс-блоки и в раскрывшемся списке выберите команду Поле . Повторите вышеописанные действия для вставки поля в колонтитул.
Кроме ручной вставки поля в колонтитулы, можно воспользоваться и специальным макросом, приведенным ниже. Вы можете вставить либо только имя текущего документа, либо путь и имя.
Если вам нужно только имя, то удалите в коде знак комментария («’») у оператора
и поставьте такой значок у нижнего оператора
Вы можете помочь в развитии сайта, сделав пожертвование:
—> Или помочь сайту популярной криптовалютой:
BTC Адрес: 1Pi3a4c6sJPbfF2sSYR2noy61DMBkncSTQ
ETH Адрес: 0x7d046a6eaa1bd712f7a6937b042e9eee4998f634
LTC Адрес: LUyT9HtGjtDyLDyEbLJZ8WZWGYUr537qbZ
USDT (ERC-20) Адрес: 0x7d046a6eaa1bd712f7a6937b042e9eee4998f634
Яндекс Деньги: 410013576807538
А тут весь список наших разных крипто адресов, может какой добрый человек пожертвует немного монет или токенов — получит плюсик в карму от нас 🙂 Благо Дарим, за любую помощь! —>