Удаление и импорт листов
VIDEO56
Дата: Понедельник, 27.07.2015, 13:24 |
Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
Всем доброго дня. Задача следующая. Есть файл в который импортируются листы прайса, нужно чтобы перед импортом из файла удалялись все листы кроме 3 определенных, после этого копировались все листы из экспортируемого файла. Делал это через рекодер, но он привязывается к импорту листов с определенным именем. Если в экспортируемом файле название листов отличается, то макрос не работает!
Всем доброго дня. Задача следующая. Есть файл в который импортируются листы прайса, нужно чтобы перед импортом из файла удалялись все листы кроме 3 определенных, после этого копировались все листы из экспортируемого файла. Делал это через рекодер, но он привязывается к импорту листов с определенным именем. Если в экспортируемом файле название листов отличается, то макрос не работает! VIDEO56
Всем удачного дня!
Ответить
Сообщение Всем доброго дня. Задача следующая. Есть файл в который импортируются листы прайса, нужно чтобы перед импортом из файла удалялись все листы кроме 3 определенных, после этого копировались все листы из экспортируемого файла. Делал это через рекодер, но он привязывается к импорту листов с определенным именем. Если в экспортируемом файле название листов отличается, то макрос не работает! Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:24
SLAVICK
Дата: Понедельник, 27.07.2015, 13:35 |
Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
Не понятно, какие листы нужно оставить... Так? [vba]Код
Sub i() Dim Sh As Worksheet, s$ Application.DisplayAlerts = False For Each Sh In ThisWorkbook.Sheets s = Sh.Name If s = "Общий график монтажей" Xor s = "Бригада 1" Xor s = "Бригада 2" Then Else Sh.Delete Next Application.DisplayAlerts = True End Sub
[/vba] Делал это через рекодер, но он привязывается к импорту листов с определенным именем
Если нужно удалять по порядковому номеру листа - тогда что - то вроде [vba][/vba] где 1 - порядковый номер листа в книге
Не понятно, какие листы нужно оставить... Так? [vba]Код
Sub i() Dim Sh As Worksheet, s$ Application.DisplayAlerts = False For Each Sh In ThisWorkbook.Sheets s = Sh.Name If s = "Общий график монтажей" Xor s = "Бригада 1" Xor s = "Бригада 2" Then Else Sh.Delete Next Application.DisplayAlerts = True End Sub
[/vba] Делал это через рекодер, но он привязывается к импорту листов с определенным именем
Если нужно удалять по порядковому номеру листа - тогда что - то вроде [vba][/vba] где 1 - порядковый номер листа в книге SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Понедельник, 27.07.2015, 13:40
Ответить
Сообщение Не понятно, какие листы нужно оставить... Так? [vba]Код
Sub i() Dim Sh As Worksheet, s$ Application.DisplayAlerts = False For Each Sh In ThisWorkbook.Sheets s = Sh.Name If s = "Общий график монтажей" Xor s = "Бригада 1" Xor s = "Бригада 2" Then Else Sh.Delete Next Application.DisplayAlerts = True End Sub
[/vba] Делал это через рекодер, но он привязывается к импорту листов с определенным именем
Если нужно удалять по порядковому номеру листа - тогда что - то вроде [vba][/vba] где 1 - порядковый номер листа в книге Автор - SLAVICK Дата добавления - 27.07.2015 в 13:35
VIDEO56
Дата: Понедельник, 27.07.2015, 13:41 |
Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, да первая часть вопроса закрыта.
SLAVICK, да первая часть вопроса закрыта. VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, да первая часть вопроса закрыта. Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:41
SLAVICK
Дата: Понедельник, 27.07.2015, 13:43 |
Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
SLAVICK, да первая часть вопроса закрыта.
Так а что и куда копировать? - не понятно
SLAVICK, да первая часть вопроса закрыта.
Так а что и куда копировать? - не понятно SLAVICK
Иногда все проще чем кажется с первого взгляда.
Ответить
Сообщение SLAVICK, да первая часть вопроса закрыта.
Так а что и куда копировать? - не понятно Автор - SLAVICK Дата добавления - 27.07.2015 в 13:43
VIDEO56
Дата: Понедельник, 27.07.2015, 13:43 |
Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, А как скопировать все листы из другого файла. Путь я написал а вот дальше затык
SLAVICK, А как скопировать все листы из другого файла. Путь я написал а вот дальше затык VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, А как скопировать все листы из другого файла. Путь я написал а вот дальше затык Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:43
VIDEO56
Дата: Понедельник, 27.07.2015, 13:45 |
Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
[vba]Код
Dim MyPath As String Dim wb1 As String Dim wb2 As String Application.ScreenUpdating = False Application.CutCopyMode = False wb1 = "Прайс новый.xls" wb2 = "Заявка дилера.xlsm" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba]
[vba]Код
Dim MyPath As String Dim wb1 As String Dim wb2 As String Application.ScreenUpdating = False Application.CutCopyMode = False wb1 = "Прайс новый.xls" wb2 = "Заявка дилера.xlsm" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba] VIDEO56
Всем удачного дня!
Сообщение отредактировал VIDEO56 - Понедельник, 27.07.2015, 13:46
Ответить
Сообщение [vba]Код
Dim MyPath As String Dim wb1 As String Dim wb2 As String Application.ScreenUpdating = False Application.CutCopyMode = False wb1 = "Прайс новый.xls" wb2 = "Заявка дилера.xlsm" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba] Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:45
VIDEO56
Дата: Понедельник, 27.07.2015, 13:46 |
Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
И из файла прайс скопировать все листы
И из файла прайс скопировать все листы VIDEO56
Всем удачного дня!
Ответить
Сообщение И из файла прайс скопировать все листы Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:46
SLAVICK
Дата: Понедельник, 27.07.2015, 13:52 |
Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
После открытия книг(wb1,wb2): [vba]Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba]
После открытия книг(wb1,wb2): [vba]Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba] SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Понедельник, 27.07.2015, 15:19
Ответить
Сообщение После открытия книг(wb1,wb2): [vba]Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba] Автор - SLAVICK Дата добавления - 27.07.2015 в 13:52
VIDEO56
Дата: Понедельник, 27.07.2015, 13:58 |
Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
Да то что нужно. А как импортируемы файлы после этого скрыть?
Да то что нужно. А как импортируемы файлы после этого скрыть? VIDEO56
Всем удачного дня!
Ответить
Сообщение Да то что нужно. А как импортируемы файлы после этого скрыть? Автор - VIDEO56 Дата добавления - 27.07.2015 в 13:58
SLAVICK
Дата: Понедельник, 27.07.2015, 14:11 |
Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
А как импортируемы файлы после этого скрыть?
Скрыть или закрыть? Если закрыть, то : [vba]Код
Workbooks(wb1).Close False
[/vba]
А как импортируемы файлы после этого скрыть?
Скрыть или закрыть? Если закрыть, то : [vba]Код
Workbooks(wb1).Close False
[/vba]SLAVICK
Иногда все проще чем кажется с первого взгляда.
Ответить
Сообщение А как импортируемы файлы после этого скрыть?
Скрыть или закрыть? Если закрыть, то : [vba]Код
Workbooks(wb1).Close False
[/vba]Автор - SLAVICK Дата добавления - 27.07.2015 в 14:11
VIDEO56
Дата: Понедельник, 27.07.2015, 14:45 |
Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, прошу прощения не правильно выразился ИМПОРТИРУЕМЫЕ ИЗ ПРАЙСА ЛИСТЫ в файле заявка скрыть!
SLAVICK, прошу прощения не правильно выразился ИМПОРТИРУЕМЫЕ ИЗ ПРАЙСА ЛИСТЫ в файле заявка скрыть! VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, прошу прощения не правильно выразился ИМПОРТИРУЕМЫЕ ИЗ ПРАЙСА ЛИСТЫ в файле заявка скрыть! Автор - VIDEO56 Дата добавления - 27.07.2015 в 14:45
SLAVICK
Дата: Понедельник, 27.07.2015, 15:10 |
Сообщение № 12
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
[vba]Код
With Workbooks(wb1) n = .Sheets.Count .Sheets.Copy Before:=ThisWorkbook.Sheets(1) .Close False End With For t = 1 To n: ThisWorkbook.Sheets(t).Visible = 2: Next
[/vba]
[vba]Код
With Workbooks(wb1) n = .Sheets.Count .Sheets.Copy Before:=ThisWorkbook.Sheets(1) .Close False End With For t = 1 To n: ThisWorkbook.Sheets(t).Visible = 2: Next
[/vba] SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Понедельник, 27.07.2015, 15:19
Ответить
Сообщение [vba]Код
With Workbooks(wb1) n = .Sheets.Count .Sheets.Copy Before:=ThisWorkbook.Sheets(1) .Close False End With For t = 1 To n: ThisWorkbook.Sheets(t).Visible = 2: Next
[/vba] Автор - SLAVICK Дата добавления - 27.07.2015 в 15:10
VIDEO56
Дата: Понедельник, 27.07.2015, 15:32 |
Сообщение № 13
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, спасибо огромное.
Всем удачного дня!
Ответить
Сообщение SLAVICK, спасибо огромное. Автор - VIDEO56 Дата добавления - 27.07.2015 в 15:32