Открытие файла и копирование листа
VIDEO56
Дата: Среда, 29.07.2015, 09:04 |
Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
Добрый день. Подскажите код макроса который бы давал возможность открыть нужный файл и скопировать из него лист "Заявка" в одноименный лист.
Добрый день. Подскажите код макроса который бы давал возможность открыть нужный файл и скопировать из него лист "Заявка" в одноименный лист. VIDEO56
Всем удачного дня!
Ответить
Сообщение Добрый день. Подскажите код макроса который бы давал возможность открыть нужный файл и скопировать из него лист "Заявка" в одноименный лист. Автор - VIDEO56 Дата добавления - 29.07.2015 в 09:04
SLAVICK
Дата: Среда, 29.07.2015, 09:47 |
Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
скопировать из него лист "Заявка" в одноименный лист.
Это как? Нужно скопировать весь лист "заявка", или данные с листа "заявка"? Как открыть файл в Вашей прошлой теме есть: [vba]
Код
wb1 = "Прайс новый.xls" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba]
И скопировать лист там- же: [vba]
Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba]
Только этот код копирует все листы, а если скопировать лист Заявка , то : [vba]Код
.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] А если данные с листа Заявка , то: [vba]Код
Application.CutCopyMode = False Workbooks(wb).Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba]
скопировать из него лист "Заявка" в одноименный лист.
Это как? Нужно скопировать весь лист "заявка", или данные с листа "заявка"? Как открыть файл в Вашей прошлой теме есть: [vba]
Код
wb1 = "Прайс новый.xls" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba]
И скопировать лист там- же: [vba]
Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba]
Только этот код копирует все листы, а если скопировать лист Заявка , то : [vba]Код
.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] А если данные с листа Заявка , то: [vba]Код
Application.CutCopyMode = False Workbooks(wb).Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba]SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Среда, 29.07.2015, 10:00
Ответить
Сообщение скопировать из него лист "Заявка" в одноименный лист.
Это как? Нужно скопировать весь лист "заявка", или данные с листа "заявка"? Как открыть файл в Вашей прошлой теме есть: [vba]
Код
wb1 = "Прайс новый.xls" MyPath = ThisWorkbook.Path & "\" & wb1 Workbooks.Open Filename:=MyPath
[/vba]
И скопировать лист там- же: [vba]
Код
With Workbooks(wb1) .Sheets.Copy Before:=ThisWorkbook.Sheets(1) End With
[/vba]
Только этот код копирует все листы, а если скопировать лист Заявка , то : [vba]Код
.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] А если данные с листа Заявка , то: [vba]Код
Application.CutCopyMode = False Workbooks(wb).Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba]Автор - SLAVICK Дата добавления - 29.07.2015 в 09:47
VIDEO56
Дата: Среда, 29.07.2015, 10:12 |
Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, нужно чтобы выскакивало окно с выбором файла.
SLAVICK, нужно чтобы выскакивало окно с выбором файла. VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, нужно чтобы выскакивало окно с выбором файла. Автор - VIDEO56 Дата добавления - 29.07.2015 в 10:12
Pelena
Дата: Среда, 29.07.2015, 10:14 |
Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19197
Репутация:
4423
±
Замечаний:
±
Excel 365 & Mac Excel
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение VIDEO56 , пользуйтесь поиском по сайту. Вот, например, готовое решение Автор - Pelena Дата добавления - 29.07.2015 в 10:14
VIDEO56
Дата: Среда, 29.07.2015, 10:17 |
Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
Pelena, спасибо. Нашел!
Всем удачного дня!
Ответить
Сообщение Pelena, спасибо. Нашел! Автор - VIDEO56 Дата добавления - 29.07.2015 в 10:17
Roman777
Дата: Среда, 29.07.2015, 10:19 |
Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
VIDEO56 , Я таким образом делал: [vba]Код
With Application.FileDialog(msoFileDialogOpen) .Title = "Выберите файл-образец" .ButtonName = "Открывашка": .AllowMultiSelect = False If .Show Then FilePth = .SelectedItems(1) Else Exit Sub End With On Error Resume Next Set OpeningWB = Workbooks.Open(FilePth)
[/vba] О, уже успели...)
VIDEO56 , Я таким образом делал: [vba]Код
With Application.FileDialog(msoFileDialogOpen) .Title = "Выберите файл-образец" .ButtonName = "Открывашка": .AllowMultiSelect = False If .Show Then FilePth = .SelectedItems(1) Else Exit Sub End With On Error Resume Next Set OpeningWB = Workbooks.Open(FilePth)
[/vba] О, уже успели...)Roman777
Много чего не знаю!!!!
Сообщение отредактировал Roman777 - Среда, 29.07.2015, 10:20
Ответить
Сообщение VIDEO56 , Я таким образом делал: [vba]Код
With Application.FileDialog(msoFileDialogOpen) .Title = "Выберите файл-образец" .ButtonName = "Открывашка": .AllowMultiSelect = False If .Show Then FilePth = .SelectedItems(1) Else Exit Sub End With On Error Resume Next Set OpeningWB = Workbooks.Open(FilePth)
[/vba] О, уже успели...)Автор - Roman777 Дата добавления - 29.07.2015 в 10:19
SLAVICK
Дата: Среда, 29.07.2015, 10:21 |
Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
чтобы выскакивало окно с выбором файла
Так сразу нужно было так и написать А что по поводу листа?
чтобы выскакивало окно с выбором файла
Так сразу нужно было так и написать А что по поводу листа? SLAVICK
Иногда все проще чем кажется с первого взгляда.
Ответить
Сообщение чтобы выскакивало окно с выбором файла
Так сразу нужно было так и написать А что по поводу листа? Автор - SLAVICK Дата добавления - 29.07.2015 в 10:21
VIDEO56
Дата: Среда, 29.07.2015, 10:29 |
Сообщение № 8
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
Roman777, спасибо!
Всем удачного дня!
Ответить
Сообщение Roman777, спасибо! Автор - VIDEO56 Дата добавления - 29.07.2015 в 10:29
VIDEO56
Дата: Среда, 29.07.2015, 10:32 |
Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, к коду который скинул Роман нужно дописать копировку листа из выбранного файла в первый!
SLAVICK, к коду который скинул Роман нужно дописать копировку листа из выбранного файла в первый! VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, к коду который скинул Роман нужно дописать копировку листа из выбранного файла в первый! Автор - VIDEO56 Дата добавления - 29.07.2015 в 10:32
SLAVICK
Дата: Среда, 29.07.2015, 11:11 |
Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
дописать копировку листа из выбранного файла в первый
Вы мое первое сообщение читали внимательно? Я же предложил Два варианта - копирование листа, и копирование данных с листа - что Вам нужно? Скопировать целый лист: [vba]Код
OpeningWB.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] Скопировать данные с листа "Заявка" в лист "Заявка": [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba]
дописать копировку листа из выбранного файла в первый
Вы мое первое сообщение читали внимательно? Я же предложил Два варианта - копирование листа, и копирование данных с листа - что Вам нужно? Скопировать целый лист: [vba]Код
OpeningWB.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] Скопировать данные с листа "Заявка" в лист "Заявка": [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Среда, 29.07.2015, 11:13
Ответить
Сообщение дописать копировку листа из выбранного файла в первый
Вы мое первое сообщение читали внимательно? Я же предложил Два варианта - копирование листа, и копирование данных с листа - что Вам нужно? Скопировать целый лист: [vba]Код
OpeningWB.Sheets("Заявка").Copy Before:=ThisWorkbook.Sheets(1)
[/vba] Скопировать данные с листа "Заявка" в лист "Заявка": [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] Автор - SLAVICK Дата добавления - 29.07.2015 в 11:11
VIDEO56
Дата: Среда, 29.07.2015, 11:16 |
Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация:
23
±
Замечаний:
0% ±
Excel 2010
SLAVICK, просмотрел. Спасибо!
SLAVICK, просмотрел. Спасибо! VIDEO56
Всем удачного дня!
Ответить
Сообщение SLAVICK, просмотрел. Спасибо! Автор - VIDEO56 Дата добавления - 29.07.2015 в 11:16
Roman777
Дата: Среда, 29.07.2015, 12:20 |
Сообщение № 12
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
SLAVICK , Подскажите, пожалуйста: В Вашем коде тут: [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] Зачем нужна строчка [vba]Код
Application.CutCopyMode = False
[/vba] без неё результат ведь тот же будет...?
SLAVICK , Подскажите, пожалуйста: В Вашем коде тут: [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] Зачем нужна строчка [vba]Код
Application.CutCopyMode = False
[/vba] без неё результат ведь тот же будет...?Roman777
Много чего не знаю!!!!
Ответить
Сообщение SLAVICK , Подскажите, пожалуйста: В Вашем коде тут: [vba]Код
Application.CutCopyMode = False OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] Зачем нужна строчка [vba]Код
Application.CutCopyMode = False
[/vba] без неё результат ведь тот же будет...?Автор - Roman777 Дата добавления - 29.07.2015 в 12:20
SLAVICK
Дата: Среда, 29.07.2015, 13:53 |
Сообщение № 13
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
Это отключение предупреждения буфера обмена. Читайте тут
Это отключение предупреждения буфера обмена. Читайте тут SLAVICK
Иногда все проще чем кажется с первого взгляда.
Ответить
Сообщение Это отключение предупреждения буфера обмена. Читайте тут Автор - SLAVICK Дата добавления - 29.07.2015 в 13:53
_Boroda_
Дата: Среда, 29.07.2015, 13:59 |
Сообщение № 14
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация:
6481
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Ну, отключение предупреждения - это следствие, а CutCopyMode = false - это отмена режима копирование (вырезания) и удаление движущихся границ вокруг диапазона.
Ну, отключение предупреждения - это следствие, а CutCopyMode = false - это отмена режима копирование (вырезания) и удаление движущихся границ вокруг диапазона. _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Ну, отключение предупреждения - это следствие, а CutCopyMode = false - это отмена режима копирование (вырезания) и удаление движущихся границ вокруг диапазона. Автор - _Boroda_ Дата добавления - 29.07.2015 в 13:59
Roman777
Дата: Среда, 29.07.2015, 14:28 |
Сообщение № 15
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
SLAVICK , _Boroda_ , Спасибо большое! только в тупик ставит меня. Мы вродебы отключаем режим копирования и вырезания, но потом всё-таки копируем: [vba]Код
OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] оно же всё-равно через буфер обмена происходит?
SLAVICK , _Boroda_ , Спасибо большое! только в тупик ставит меня. Мы вродебы отключаем режим копирования и вырезания, но потом всё-таки копируем: [vba]Код
OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] оно же всё-равно через буфер обмена происходит?Roman777
Много чего не знаю!!!!
Ответить
Сообщение SLAVICK , _Boroda_ , Спасибо большое! только в тупик ставит меня. Мы вродебы отключаем режим копирования и вырезания, но потом всё-таки копируем: [vba]Код
OpeningWB.Sheets("Заявка").Cells.Copy ThisWorkbook.Sheets("Заявка").Cells(1, 1)
[/vba] оно же всё-равно через буфер обмена происходит?Автор - Roman777 Дата добавления - 29.07.2015 в 14:28
_Boroda_
Дата: Среда, 29.07.2015, 14:31 |
Сообщение № 16
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация:
6481
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Не, не совсем так. Вернее, дело не в этом [vba][/vba] убирает режим копирования для УЖЕ скопированного на данный момент диапазона. А потом можно копировать еще, никто не мешает. И будет новый диапазон копирования. Кстати, при вставке типа [vba]Код
Range(Диапазон_1).Copy Range(Диапазон_2)
[/vba] режим копирования не создается (муравьишки вокруг скопированного диапазона не бегают), поэтому и убирать его не обязательно.
Не, не совсем так. Вернее, дело не в этом [vba][/vba] убирает режим копирования для УЖЕ скопированного на данный момент диапазона. А потом можно копировать еще, никто не мешает. И будет новый диапазон копирования. Кстати, при вставке типа [vba]Код
Range(Диапазон_1).Copy Range(Диапазон_2)
[/vba] режим копирования не создается (муравьишки вокруг скопированного диапазона не бегают), поэтому и убирать его не обязательно. _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Не, не совсем так. Вернее, дело не в этом [vba][/vba] убирает режим копирования для УЖЕ скопированного на данный момент диапазона. А потом можно копировать еще, никто не мешает. И будет новый диапазон копирования. Кстати, при вставке типа [vba]Код
Range(Диапазон_1).Copy Range(Диапазон_2)
[/vba] режим копирования не создается (муравьишки вокруг скопированного диапазона не бегают), поэтому и убирать его не обязательно. Автор - _Boroda_ Дата добавления - 29.07.2015 в 14:31
Roman777
Дата: Среда, 29.07.2015, 14:47 |
Сообщение № 17
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
_Boroda_ , Спасибо большое за разъяснения.
_Boroda_ , Спасибо большое за разъяснения.Roman777
Много чего не знаю!!!!
Ответить
Сообщение _Boroda_ , Спасибо большое за разъяснения.Автор - Roman777 Дата добавления - 29.07.2015 в 14:47