#vba #ms-word
#vba #ms-word
Вопрос:
У меня есть код, который отлично работает, когда это файл Excel. Я хотел бы знать, как сделать то же самое для файла docx.
вот мой код EXCEL, я хотел бы то же самое, но для документа word. Поскольку в word нет ЯЧЕЕК, приведенный ниже код, очевидно, не будет работать для word.
Sub CopierFichier()
Dim counter_var As String
Dim fso As Object
Set fso = VBA.CreateObject("Scripting.FileSystemObject")
counter_var = Cells(1, 1).Value
' copy
Call fso.CopyFile("C:UserschiDesktopleadTABLE.xlsm", "C:UserschiDesktopAlmodTABLE_COPIE_" counter_var ".xlsm")
Cells(1, 1).Value = Cells(1, 1).Value 1
Workbooks("TABLE.xlsm").Save
End Sub
Комментарии:
1. Если основным приложением является Word, то ячейки (1,1).Значение не будет работать, поскольку это ссылка на объект ячейки Excel. Это также показывает, что ячейки без рабочей книги s. рабочий лист. квалификация — плохая практика. Если вы размещаете приложение в Excel, то все, что вам нужно изменить, это . .xlsm на соответствующий .<xxx> для типа файла Word, который вы хотите скопировать.
2. Я знаю. Это то, что я сказал. Я знаю, что значение ячеек не будет работать, поскольку это ссылка на Excel. Я спрашиваю, что я могу заменить, чтобы заставить его работать для документа Word.
3. support.microsoft.com/en-us/help/306281/…
4. Вы можете сохранить значение переменной в переменной документа: gregmaxey.com/word_tip_pages /… или пользовательское свойство документа: support.microsoft.com/en-us/office /…
5. Возможно, вы захотите посмотреть страницу Грэма Мэра о нумерации документов Word, что касается номеров счетов. См. gmayor.com/automatic_numbering_documents.htm .