1 / 1 / 0
Регистрация: 12.06.2015
Сообщений: 93

Сохранить КОПИЮ файла в формате .xlsx

21.09.2018, 20:30. Показов 14924. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сохранить копию файла по определенном пути без макросов.
Такой пример не удачный, так как файл .xlsx, который якобы сохранился, при открытии ругается что расширение и формат являются не допустимыми

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Dim x As String
    strPath = "W:\Отчетность\"
    On Error Resume Next
    x = GetAttr(strPath) And 0
    If Err = 0 Then
        strDate = Format(Now, "dd-mm-yy hh-mm")
        FileNameXls = strPath & "\" & "Отчет" & " " & strDate & ".xlsx"
        ActiveWorkbook.SaveCopyAs Filename:=FileNameXls
    Else
        MsgBox " " & strPath & " ", vbCritical
    End If

Есть способ сохранить КОПИЮ файла в формате .xlsx ?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.09.2018, 20:30
Ответы с готовыми решениями:

VBA Excel Сохранение в формате xlsx
Возможно и как сохранить макрос и форму на писанные на VBA в формате документа xlsx, а не в xlsm. Встречал документы с макросами в...

Сохранить копию книги в Excel 2007
есть книга с макросами, созданная в Excel 2010. После открытия книги пользователь производит с ней определенные манипуляции и результат...

сохранить копию doc без макросов
Здравствуйте есть 2.doc с макросами, как с помощью vba его же скопировать но уже что бы в нём не было макросов?

8
Заблокирован
21.09.2018, 20:37
Sub SaveAs([Filename], [FileFormat], [Password], [WriteResPassword], [ReadOnlyRecommended], [CreateBackup], [AccessMode As XlSaveAsAccessMode = xlNoChange], [ConflictResolution], [AddToMru], [TextCodepage], [TextVisualLayout], [Local])
Member of Excel.Workbook
1
1 / 1 / 0
Регистрация: 12.06.2015
Сообщений: 93
21.09.2018, 21:38  [ТС]
SaveAs сохраняет файл, в котором выполняется макрос.
А нужно чтобы в конце выполнения макроса сохранилась копия файла по другому пути без макросов в формате xlsx
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
21.09.2018, 23:54
Лучший ответ Сообщение было отмечено Heroes как решение

Решение

Heroes, сначала SaveCopyAs, потом открыть и сохранить в нужном формате. Допилите по необходимости.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Sub ExportAsXLSX()
Const strPath = "W:\Отчетность\"
Dim x
  On Error GoTo 1
  Application.ScreenUpdating = False
  Application.DisplayAlerts = False
  x = strPath & Format(Now, "hhmmss") & ActiveWorkbook.Name
  ActiveWorkbook.SaveCopyAs x
  With Workbooks.Open(x)
    .SaveAs strPath & Format(Now, "Отчет dd-mm-yy hh-mm.xl\sx"), xlOpenXMLWorkbook
    .Close 0
  End With
  Kill x
1 Application.ScreenUpdating = True
  Application.DisplayAlerts = True
End Sub
GetAttr(strPath) And 0 всегда будет 0.
1
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
22.09.2018, 18:41
Если меняете формат (да ещё и содержимое) - как это может быть КОПИЕЙ?
0
1 / 1 / 0
Регистрация: 12.06.2015
Сообщений: 93
22.09.2018, 21:21  [ТС]
Цитата Сообщение от Hugo121 Посмотреть сообщение
Если меняете формат (да ещё и содержимое) - как это может быть КОПИЕЙ?
Ок, это Не копия,
а копия файла с заменой формата с xlsm на xlsx (содержимое например не меняется).
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
22.09.2018, 21:25
Ну вот потому SaveCopyAs никак и не подходит.
1
1 / 1 / 0
Регистрация: 12.06.2015
Сообщений: 93
22.09.2018, 21:56  [ТС]
Цитата Сообщение от Hugo121 Посмотреть сообщение
Ну вот потому SaveCopyAs никак и не подходит.
вы правы не подходит,
тогда вариант сделать SaveCopyAs, открыть эту копию, выполнить SaveAs в нужном формате, ТОлько такой вариант?
Вроде рабочий вариант, но так получается цепочка с 3- файлов(1. Исходный файл, где макрос. 2. Файл "SaveCopyAs". 3. Copy-файл в нужном формате
Если бы сделать все с цепочки 2-х файлов (1. Исходный файл, где макрос. 2. копия файла с заменой формата с xlsm на xlsx


Есть еще идеи?
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
22.09.2018, 22:30
Можно не делать копию, а сразу сохранять книгу в нужном виде - но тогда эта конкретная активная книга и будет уже в другом формате, и если Вы хотите продолжать работать с нею в том первозданном виде - нужно её снова открывать. А эту - закрывать.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.09.2018, 22:30
Помогаю со студенческими работами здесь

Как при нажатии кнопки "сохранить" выдать окно с выбором места сохранения и сохранить текст, написанный в ТекстБокс, в формате .doc(x)
Уважаемы дамы и господа! Требуется чтоб при нажатии кнопки "сохранить" программа выводила окно с выбором места сохранения и сохраняла...

Word 2007: сохранить копию документа перед выполнением макроса
Здравствуйте, помогите с макросом, который сохраняет копию файла с именем открытого документа. Файл из папки "анализ" перед...

Сохранить книгу в формате csv
Товарищи, помогите разобраться. Хочу настроить макрос таким образом, чтобы активная книга сохранялась в формате .csv (разделитель -...

Обработка данных другого файла *.xlsx
Добрый день! Прошу помочь разобраться со следующей задачей. У нас в банке каждую неделю обновляется большой массив (таблица в эксель)...

Создание файла *.xls (*.xlsx) по заданному пользователем адресу
Подскажите, пожалуйста, 2 функции: 1. функция создает файл с именем Name.xls в папке Path. 2. функция возвращает признак существования...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru