Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/слово "копия" при сохранени файла EXСEL2019 - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » слово "копия" при сохранени файла EXСEL2019 (Иное/Other)
слово "копия" при сохранени файла EXСEL2019
leclerick Дата: Вторник, 26.11.2019, 11:35 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Доброго дня! Хотел посоветоваться с местными ГУРУ. Гугл не дал никакого ответа. Посадили за машину, стоит офис профессиональный плюс 2019. в Экселе, при сохранении файла, в имя файла всегда добавляет слово копия, запарился стирать. Все менюшки облазил, не могу найти как это отключить. Заранее спасибо за помощь.
 
Ответить
СообщениеДоброго дня! Хотел посоветоваться с местными ГУРУ. Гугл не дал никакого ответа. Посадили за машину, стоит офис профессиональный плюс 2019. в Экселе, при сохранении файла, в имя файла всегда добавляет слово копия, запарился стирать. Все менюшки облазил, не могу найти как это отключить. Заранее спасибо за помощь.

Автор - leclerick
Дата добавления - 26.11.2019 в 11:35
Cooller Дата: Понедельник, 27.04.2020, 16:04 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Доброго времени суток!

Долго мучился с такой же проблемой. В итоге написал скрипт на vbs. Теперь все норм, слово "Копия " удаляется при повторном сохранении.

https://bigfile.cc/6kL2
К сообщению приложен файл: Excelfix.rar (354.8 Kb)


Сообщение отредактировал Cooller - Понедельник, 27.04.2020, 16:06
 
Ответить
СообщениеДоброго времени суток!

Долго мучился с такой же проблемой. В итоге написал скрипт на vbs. Теперь все норм, слово "Копия " удаляется при повторном сохранении.

https://bigfile.cc/6kL2

Автор - Cooller
Дата добавления - 27.04.2020 в 16:04
bmv98rus Дата: Понедельник, 27.04.2020, 22:13 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4107
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
Cooller, Возможно это и работает и даже кому-то нужно , но повесить на все время работы скрипт, который раз в секунду дергается в цикле ..... - сомнительно решение

https://u.to/JgA5GA

Да и есть решения чуть проще
https://excel.tips.net/T003064_Getting_Rid_of_Copy_of.html


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 27.04.2020, 22:38
 
Ответить
СообщениеCooller, Возможно это и работает и даже кому-то нужно , но повесить на все время работы скрипт, который раз в секунду дергается в цикле ..... - сомнительно решение

https://u.to/JgA5GA

Да и есть решения чуть проще
https://excel.tips.net/T003064_Getting_Rid_of_Copy_of.html

Автор - bmv98rus
Дата добавления - 27.04.2020 в 22:13
Cooller Дата: Понедельник, 27.04.2020, 23:05 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
По Вашему вешать на каждый файл макрос и вручную редактировать переменную sCheck лучшее решение?
 
Ответить
СообщениеПо Вашему вешать на каждый файл макрос и вручную редактировать переменную sCheck лучшее решение?

Автор - Cooller
Дата добавления - 27.04.2020 в 23:05
bmv98rus Дата: Понедельник, 27.04.2020, 23:41 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4107
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
Cooller, Личную Книгу Макросов не запрещено использовать.
[vba]
Код
Private WithEvents App As Application

Private Sub App_WorkbookBeforeSave(ByVal Wb As Workbook, ByVal SaveAsUI As Boolean, Cancel As Boolean)
     If InStr(1, Wb.Name, "Copy of ") = 1 Then
         Application.EnableEvents = False
         Cancel = True
         Wb.SaveAs Replace(Wb.FullName, "Copy of ", "")
         Application.EnableEvents = True
     End If
End Sub

Private Sub Workbook_Open()
     Set App = Application
End Sub
[/vba]


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 27.04.2020, 23:43
 
Ответить
СообщениеCooller, Личную Книгу Макросов не запрещено использовать.
[vba]
Код
Private WithEvents App As Application

Private Sub App_WorkbookBeforeSave(ByVal Wb As Workbook, ByVal SaveAsUI As Boolean, Cancel As Boolean)
     If InStr(1, Wb.Name, "Copy of ") = 1 Then
         Application.EnableEvents = False
         Cancel = True
         Wb.SaveAs Replace(Wb.FullName, "Copy of ", "")
         Application.EnableEvents = True
     End If
End Sub

Private Sub Workbook_Open()
     Set App = Application
End Sub
[/vba]

Автор - bmv98rus
Дата добавления - 27.04.2020 в 23:41
Cooller Дата: Вторник, 28.04.2020, 00:10 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Чтобы заработал этот макрос его нужно прикрепить к редактируемому файлу, верно?
 
Ответить
СообщениеЧтобы заработал этот макрос его нужно прикрепить к редактируемому файлу, верно?

Автор - Cooller
Дата добавления - 28.04.2020 в 00:10
bmv98rus Дата: Вторник, 28.04.2020, 06:55 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4107
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщение
верно?

нет
https://www.planetaexcel.ru/techniques/3/5201/

Автор - bmv98rus
Дата добавления - 28.04.2020 в 06:55
Cooller Дата: Вторник, 28.04.2020, 12:45 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
bmv98rus, хотел бы разобраться в этом вопросе.

1. В переменной Wb.Name имя файла, без слова "Копия", поэтому
[vba]
Код

If InStr(1, Wb.Name, "Copy of ") = 1 Then
[/vba]
не сработает. Префикс "Копия " добавляется после появления диалогового окна

2. Код
[vba]
Код

Application.EnableEvents = False
Cancel = True
Wb.SaveAs Replace(Wb.FullName, "Copy of ", "")
Application.EnableEvents = True
[/vba]
отключает появление диалогового окна. Соответственно выбрать место пересохранения и имя файла невозможно


Сообщение отредактировал Cooller - Вторник, 28.04.2020, 13:11
 
Ответить
Сообщениеbmv98rus, хотел бы разобраться в этом вопросе.

1. В переменной Wb.Name имя файла, без слова "Копия", поэтому
[vba]
Код

If InStr(1, Wb.Name, "Copy of ") = 1 Then
[/vba]
не сработает. Префикс "Копия " добавляется после появления диалогового окна

2. Код
[vba]
Код

Application.EnableEvents = False
Cancel = True
Wb.SaveAs Replace(Wb.FullName, "Copy of ", "")
Application.EnableEvents = True
[/vba]
отключает появление диалогового окна. Соответственно выбрать место пересохранения и имя файла невозможно

Автор - Cooller
Дата добавления - 28.04.2020 в 12:45
Cooller Дата: Понедельник, 11.05.2020, 16:29 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Переписал скрипт на VBA
[vba]
Код

Private WithEvents App As Application

Private Sub Workbook_Open()

Set App = Application
    
End Sub

Private Sub App_WorkbookBeforeSave(ByVal wb As Workbook, ByVal SaveAsUI As Boolean, Cancel As Boolean)

If SaveAsUI Then

    Cancel = True
    With App.FileDialog(msoFileDialogSaveAs)
        .InitialFileName = wb.FullName
         
        p = InStrRev(wb.FullName, ".")
        If p > 0 Then
            ext = "*" + Mid(wb.FullName, p)
            For i = 1 To .Filters.Count
                If .Filters(i).Extensions = ext Then
                   .FilterIndex = i: Exit For
                End If
            Next
            If (ext = "*.mht" Or ext = "*.mhtml") Then .FilterIndex = 7
            If (ext = "*.htm" Or ext = "*.html") Then .FilterIndex = 8
        End If
         
        If .Show = -1 Then
            If (.FilterIndex = 2 Or .FilterIndex = 10) Then
            wb.SaveAs .SelectedItems(1), FileFormat:=xlOpenXMLWorkbookMacroEnabled
            Else
            wb.SaveAs .SelectedItems(1)
            End If
        End If
        
    End With

End If

End Sub
[/vba]

Спасибо форумчанину pashulka с cyberforum.ru за помощь
 
Ответить
СообщениеПереписал скрипт на VBA
[vba]
Код

Private WithEvents App As Application

Private Sub Workbook_Open()

Set App = Application
    
End Sub

Private Sub App_WorkbookBeforeSave(ByVal wb As Workbook, ByVal SaveAsUI As Boolean, Cancel As Boolean)

If SaveAsUI Then

    Cancel = True
    With App.FileDialog(msoFileDialogSaveAs)
        .InitialFileName = wb.FullName
         
        p = InStrRev(wb.FullName, ".")
        If p > 0 Then
            ext = "*" + Mid(wb.FullName, p)
            For i = 1 To .Filters.Count
                If .Filters(i).Extensions = ext Then
                   .FilterIndex = i: Exit For
                End If
            Next
            If (ext = "*.mht" Or ext = "*.mhtml") Then .FilterIndex = 7
            If (ext = "*.htm" Or ext = "*.html") Then .FilterIndex = 8
        End If
         
        If .Show = -1 Then
            If (.FilterIndex = 2 Or .FilterIndex = 10) Then
            wb.SaveAs .SelectedItems(1), FileFormat:=xlOpenXMLWorkbookMacroEnabled
            Else
            wb.SaveAs .SelectedItems(1)
            End If
        End If
        
    End With

End If

End Sub
[/vba]

Спасибо форумчанину pashulka с cyberforum.ru за помощь

Автор - Cooller
Дата добавления - 11.05.2020 в 16:29
Мир MS Excel » Вопросы и решения » Вопросы по Excel » слово "копия" при сохранени файла EXСEL2019 (Иное/Other)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!