powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Какие то непонимания у меня с EXCEL
8 сообщений из 8, страница 1 из 1
Какие то непонимания у меня с EXCEL
    #34805451
farbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, доброго дня вам!
Возникла вот такая трудность, никак не понимаю как её решить.
Делаю копирование листа из одной книги в другую, ну ещё попутно небольшие манипуляции.
вот код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
Sub Макрос3()
    
    Workbooks.Open Filename:= _
        "D:\Структура.xls"
       
       Application.CutCopyMode = False
       Worksheets( 1 ).Activate
       Cells.Select
       Selection.Copy
       
       'отключаем сообщения об ошибках
       Application.DisplayAlerts = False
       ActiveWorkbook.Close
       Application.DisplayAlerts = True
        'удаляем
        Workbooks.Add
        Visible = False
        Workbooks( 1 ).Activate
        'отключаем сообщения об ошибках
        Application.DisplayAlerts = False
        'удаляем листы
        For i& =  1  To Sheets.Count -  1 
           Sheets( 1 ).Delete
        Next i&
        Application.DisplayAlerts = True

        Sheets( 1 ).Name = "XXXXXX"
        ActiveSheet.Paste ' вставляем
        Application.CutCopyMode = False
        
        'отключаем сообщения об ошибках
        Application.DisplayAlerts = False
       'сохраняем
        ActiveWorkbook.SaveAs Filename:="C:\Program Files\ARIS6.2\for_Aris\ExcelTemp.xls"
       'включаем сообщения об ошибках
        Application.DisplayAlerts = True
       
        Application.Quit
End Sub


Вопрос:
1) Копирование происходит только если я макрос выполняю пошагово....., если я не пошагово его выполняю то при открытии результирующего скрипта мне выдаётся сообщение - "Отключить макросы или нет", при любом ответе у меня документ не открывается и никаких ошибок (остаётся открытым только приложение)
КАК ЭТО ИСПРАВИТЬ ?

2) Если же я всётаки макрос выполняю пошагово, то получаю в результирующем файле скопированные данные (и только доанные !) без форматирования (без границ , таблиц).
ЧТо у меня не так в этом случае ?

З.Ы. макрос который я запускаю - хранится в PERSONAL.XLS


Господа , есть у кого нить догаткиб что происходит ?

Я знаю, что ничего не знаю.
Сократ.
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34805931
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О Господи....
Код: plaintext
1.
2.
3.
4.
5.
6.
sub macro3()
    workbooks.open filename:="d:\structure.xls"
    activeworkbook.worksheets( 1 ).copy
    activesheet.name = "XXXXXX"
    ActiveWorkbook.SaveAs Filename:="C:\Program Files\ARIS6.2\for_Aris\ExcelTemp.xls"
    application.quit
end sub
все
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34806802
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще совет ТС : используйте директиву Option Explicit.
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34809940
farbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, может конечно немного не понятно выразился ...
Вот задача:
Открыть некую книгу Эксэль (допустим X) , и скопировать все её не пустые листы в другую книгу (Y) (конечно предварительно тоже её открыв). Предворительно книгу Y нужно очистить от пустых листов (стандартно идут 3 пустых листа при создании книги), оставив только один лист.

помогите с реализацией, как правильно и быстро это сделать , и с меньшим количеством морганий экрана?

Я знаю, что ничего не знаю.
Сократ.
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34810003
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
farboxскопировать все её не пустые листы в другую книгу (Y)

Код: plaintext
1.
2.
3.
4.
For each ws in Workbooks("X").Worksheets
...
if cells.SpecialCells(xlCellTypeLastCell) is range("A1") then ws.Copy Before:=Workbooks("Y").Sheets( 1 )
next ws

авторПредварительно книгу Y нужно очистить от пустых листов (стандартно идут 3 пустых листа при создании книги), оставив только один лист.

Это лучше сделать после копирования листов из книги Х, чтобы удалить все пустые листы книги Y.

автор и с меньшим количеством морганий экрана?
Application.ScreenUpdating =False
Потом не забыть Application.ScreenUpdating =True
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34811110
farbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К сожалению конструкция для определения пустой или не пустой лист не работает.

Код: plaintext
1.
cells.SpecialCells(xlCellTypeLastCell) is range("A1")

МОжет что то я делаю не так ?
Может есть какие нить другие способы проверить лист на пустоту ?

Я знаю, что ничего не знаю.
Сократ.
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34812763
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что то я намудрил
cells.SpecialCells(xlCellTypeLastCell).Address =range("A1").address
...
Рейтинг: 0 / 0
Какие то непонимания у меня с EXCEL
    #34812786
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Какие то непонимания у меня с EXCEL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]