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

Вход

Регистрация

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

 

= Мир MS Excel/Выборочное копирование диапазонов таблицы в 4 разные книги - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выборочное копирование диапазонов таблицы в 4 разные книги (Макросы/Sub)
Выборочное копирование диапазонов таблицы в 4 разные книги
китин Дата: Вторник, 29.03.2016, 14:43 | Сообщение № 1
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Всем доброго времени суток!!!Поступила вводная от шефа: создать таблички по участкам для работы в них разных менагеров.Таблички одинаковые , только даты запуска и окончания во всех таблицах разные. Необходимо из одной таблицы на 20000 строк вытащить только те строки, в которых в столбце V стоит какое либо значение в 4 книги: Заготовка ; Механика; Сварка; Сборка. При чем диапазон под группировкой переносить не надо.Переносить надо с форматами и формулами. [p.s.]я конечно мог бы и формулами, но на такой объем тормоза будут жуткими %)
К сообщению приложен файл: forum.xlsx (27.4 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеВсем доброго времени суток!!!Поступила вводная от шефа: создать таблички по участкам для работы в них разных менагеров.Таблички одинаковые , только даты запуска и окончания во всех таблицах разные. Необходимо из одной таблицы на 20000 строк вытащить только те строки, в которых в столбце V стоит какое либо значение в 4 книги: Заготовка ; Механика; Сварка; Сборка. При чем диапазон под группировкой переносить не надо.Переносить надо с форматами и формулами. [p.s.]я конечно мог бы и формулами, но на такой объем тормоза будут жуткими %)

Автор - китин
Дата добавления - 29.03.2016 в 14:43
_Boroda_ Дата: Вторник, 29.03.2016, 14:49 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Игорь, я правильно понимаю, что это разовая работа? Если да, то просто скопируй книгу 3 раза, поставь ручной пересчет, поставь автофильтры <>Сборка в материале и Пусто в Апреле, выдели и удали строки. Сними автофильтры. Диапазоны под группировкой удали. На каждую книгу уйдет 2-3 минуты. Дольше с макросом или формулами возиться будешь.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеИгорь, я правильно понимаю, что это разовая работа? Если да, то просто скопируй книгу 3 раза, поставь ручной пересчет, поставь автофильтры <>Сборка в материале и Пусто в Апреле, выдели и удали строки. Сними автофильтры. Диапазоны под группировкой удали. На каждую книгу уйдет 2-3 минуты. Дольше с макросом или формулами возиться будешь.

Автор - _Boroda_
Дата добавления - 29.03.2016 в 14:49
китин Дата: Вторник, 29.03.2016, 14:55 | Сообщение № 3
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Саш нет.Это работа (как хочет шеф) будет постоянная. Потом надо будет еще наладить связи между книгами, что бы данные передавались последовательно из заготовки в механику, потом в сварку потом в сборку %) killed
Я бы не заморачивал вас с макросом из за простого создания 4 копий :D


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеСаш нет.Это работа (как хочет шеф) будет постоянная. Потом надо будет еще наладить связи между книгами, что бы данные передавались последовательно из заготовки в механику, потом в сварку потом в сборку %) killed
Я бы не заморачивал вас с макросом из за простого создания 4 копий :D

Автор - китин
Дата добавления - 29.03.2016 в 14:55
_Boroda_ Дата: Вторник, 29.03.2016, 15:27 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
данные передавались последовательно из заготовки в механику, потом в сварку потом в сборку

Уууууу! А не проще все в одном вести, а когда надо только кусок показать, то делить его, уж если так хочется? Ты ж повесишься взаимосвязи прописывать.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
данные передавались последовательно из заготовки в механику, потом в сварку потом в сборку

Уууууу! А не проще все в одном вести, а когда надо только кусок показать, то делить его, уж если так хочется? Ты ж повесишься взаимосвязи прописывать.

Автор - _Boroda_
Дата добавления - 29.03.2016 в 15:27
китин Дата: Вторник, 29.03.2016, 15:35 | Сообщение № 5
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Да по всякому думал: и одну книгу в общий доступ повесить, но тогда количество строк придется в 4 раза увеличивать.на каждую деталь 4 строчки.а на работе у диспетчеров компы чуть ли не Спектрумы стоят.Не потянут. Решил, что проще так: одна таблица со всеми формулами у меня(автоматом разбивает план на месяц по изделиям, деталям и заготовкам на каждый день месяца).в 4 таблицы переносятся данные для каждого диспетчера уже без формул, только значения и форматы. Но ессно при каждом изменении плана у диспетчеров должны появляться эти изменения.А между ними уже должны переходить детали после окончания каждой операции.
[p.s.]новая мет... шеф так видит поэтапное планирование производства


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852


Сообщение отредактировал китин - Вторник, 29.03.2016, 15:36
 
Ответить
СообщениеДа по всякому думал: и одну книгу в общий доступ повесить, но тогда количество строк придется в 4 раза увеличивать.на каждую деталь 4 строчки.а на работе у диспетчеров компы чуть ли не Спектрумы стоят.Не потянут. Решил, что проще так: одна таблица со всеми формулами у меня(автоматом разбивает план на месяц по изделиям, деталям и заготовкам на каждый день месяца).в 4 таблицы переносятся данные для каждого диспетчера уже без формул, только значения и форматы. Но ессно при каждом изменении плана у диспетчеров должны появляться эти изменения.А между ними уже должны переходить детали после окончания каждой операции.
[p.s.]новая мет... шеф так видит поэтапное планирование производства

Автор - китин
Дата добавления - 29.03.2016 в 15:35
китин Дата: Вторник, 29.03.2016, 15:38 | Сообщение № 6
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
ЗЫ. все новые книги будут лежать в одной папке на сервере


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеЗЫ. все новые книги будут лежать в одной папке на сервере

Автор - китин
Дата добавления - 29.03.2016 в 15:38
китин Дата: Среда, 30.03.2016, 15:18 | Сообщение № 7
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
актуально


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениеактуально

Автор - китин
Дата добавления - 30.03.2016 в 15:18
SLAVICK Дата: Среда, 30.03.2016, 15:36 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Т.е. если поставить фильтр в колонке v на больше 0, то:
нужно перенести только видимые ячейки в диапазоне "B15:e..." и "u15:al..."
так или еще чего?

И куда вставлять? - скиньте архив со всеми книгами(примеры) и выделите цветом что переносить - а то не понятно.

я конечно мог бы и формулами, но на такой объем тормоза будут жуткими

я в таких случаях оставляю формулу только в верхней строке - а дальше макросом:
"протягиваю" формулы по очереди по столбцам до нужной строки
"убиваю" формулы ниже этой первой строки.


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеТ.е. если поставить фильтр в колонке v на больше 0, то:
нужно перенести только видимые ячейки в диапазоне "B15:e..." и "u15:al..."
так или еще чего?

И куда вставлять? - скиньте архив со всеми книгами(примеры) и выделите цветом что переносить - а то не понятно.

я конечно мог бы и формулами, но на такой объем тормоза будут жуткими

я в таких случаях оставляю формулу только в верхней строке - а дальше макросом:
"протягиваю" формулы по очереди по столбцам до нужной строки
"убиваю" формулы ниже этой первой строки.

Автор - SLAVICK
Дата добавления - 30.03.2016 в 15:36
китин Дата: Среда, 30.03.2016, 15:50 | Сообщение № 9
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Привет Слава.Да перенести ячейки А1:Е30 и W1:BN30 в новые книги. Скажем заготовка сборка сварка и механика.Попробовал копипастом.формулы убивает УФ смещается и не работает.А начальству охота все цветным видеть.


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеПривет Слава.Да перенести ячейки А1:Е30 и W1:BN30 в новые книги. Скажем заготовка сборка сварка и механика.Попробовал копипастом.формулы убивает УФ смещается и не работает.А начальству охота все цветным видеть.

Автор - китин
Дата добавления - 30.03.2016 в 15:50
SLAVICK Дата: Среда, 30.03.2016, 16:39 | Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Так?:
[vba]
Код
Sub d()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .ShowAllData
        .Range("$A$14:$BN$" & n).AutoFilter Field:=22, Criteria1:="<1", Operator:=xlAnd
        .Range("$A$15:$a$" & n).SpecialCells(xlCellTypeVisible).EntireRow.Delete
        .ShowAllData
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
    End With
    For Each wbN In Array("сварка.xlsx", "сборка.xlsx", "механика.xlsx")

        Set wb = Workbooks.Open(awb.Path & "\" & wbN)
        
        With wb.Sheets(1)
            n1 = .Cells(.Rows.Count, 1).SpecialCells(xlLastCell).Row
            .Rows("15:" & n1).Clear
            awb.Sheets(1).Range("A15:E" & n).Copy: .Range("A15").PasteSpecial Paste:=xlPasteValues
            awb.Sheets(1).Range("W15:BN" & n).Copy: .Range("w15").PasteSpecial Paste:=xlPasteValues
            awb.Sheets(1).Range("a15:BN" & n).Copy: .Range("a15").PasteSpecial Paste:=xlPasteFormats
        End With
        Application.CutCopyMode = False
        wb.Close True
    Next
End Sub
[/vba]
Макрос в файле форум. Файл форум - потом закрывайте без сохранения ;)
К сообщению приложен файл: forum.zip (91.9 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеТак?:
[vba]
Код
Sub d()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .ShowAllData
        .Range("$A$14:$BN$" & n).AutoFilter Field:=22, Criteria1:="<1", Operator:=xlAnd
        .Range("$A$15:$a$" & n).SpecialCells(xlCellTypeVisible).EntireRow.Delete
        .ShowAllData
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
    End With
    For Each wbN In Array("сварка.xlsx", "сборка.xlsx", "механика.xlsx")

        Set wb = Workbooks.Open(awb.Path & "\" & wbN)
        
        With wb.Sheets(1)
            n1 = .Cells(.Rows.Count, 1).SpecialCells(xlLastCell).Row
            .Rows("15:" & n1).Clear
            awb.Sheets(1).Range("A15:E" & n).Copy: .Range("A15").PasteSpecial Paste:=xlPasteValues
            awb.Sheets(1).Range("W15:BN" & n).Copy: .Range("w15").PasteSpecial Paste:=xlPasteValues
            awb.Sheets(1).Range("a15:BN" & n).Copy: .Range("a15").PasteSpecial Paste:=xlPasteFormats
        End With
        Application.CutCopyMode = False
        wb.Close True
    Next
End Sub
[/vba]
Макрос в файле форум. Файл форум - потом закрывайте без сохранения ;)

Автор - SLAVICK
Дата добавления - 30.03.2016 в 16:39
китин Дата: Суббота, 02.04.2016, 08:19 | Сообщение № 11
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Слава спасибо.Пока не тестил: времени нет. Как попробую отпишусь


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеСлава спасибо.Пока не тестил: времени нет. Как попробую отпишусь

Автор - китин
Дата добавления - 02.04.2016 в 08:19
китин Дата: Пятница, 08.04.2016, 15:29 | Сообщение № 12
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Доброго времени!!Протестил .почти все хорошо.Можно только, что бы столбцы с F по T вообще бы не копировались в новые книги? ЗЫ. И вопрос вдогонку: а какая разница в разном написании диапазонов?
[vba]
Код
Range("W15:BN" & n)..Range("w15")
[/vba]имеется ввиду строчное и прописное W и w
[offtop]gпрошу прощения за тавтологию :D


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852


Сообщение отредактировал китин - Пятница, 08.04.2016, 15:34
 
Ответить
СообщениеДоброго времени!!Протестил .почти все хорошо.Можно только, что бы столбцы с F по T вообще бы не копировались в новые книги? ЗЫ. И вопрос вдогонку: а какая разница в разном написании диапазонов?
[vba]
Код
Range("W15:BN" & n)..Range("w15")
[/vba]имеется ввиду строчное и прописное W и w
[offtop]gпрошу прощения за тавтологию :D

Автор - китин
Дата добавления - 08.04.2016 в 15:29
SLAVICK Дата: Пятница, 08.04.2016, 15:41 | Сообщение № 13
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
что бы столбцы с F по T вообще бы не копировались в новые книги

Т.е. чтобы их не было? или были но пустые?
Я же копирую только формат для них - значения не трогаются.
какая разница в разном написании диапазонов

Никакой, регистр значения не имеет. :)
я указываю что копирую тут:
[vba]
Код
Range("W15:BN" & n).Copy
[/vba]
и первую ячейку(верхнюю левую) куда вставляю тут :
[vba]
Код
.Range("w15").PasteSpecial Paste:=xlPasteValues
[/vba]
- так проще. :D
Я мог бы написать и :
[vba]
Код
.Range("w15:Bn" & n).PasteSpecial Paste:=xlPasteValues
[/vba]
или
[vba]
Код
.Range("W15:BN" & n).PasteSpecial Paste:=xlPasteValues
[/vba]
Или я не понял вопроса?


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
что бы столбцы с F по T вообще бы не копировались в новые книги

Т.е. чтобы их не было? или были но пустые?
Я же копирую только формат для них - значения не трогаются.
какая разница в разном написании диапазонов

Никакой, регистр значения не имеет. :)
я указываю что копирую тут:
[vba]
Код
Range("W15:BN" & n).Copy
[/vba]
и первую ячейку(верхнюю левую) куда вставляю тут :
[vba]
Код
.Range("w15").PasteSpecial Paste:=xlPasteValues
[/vba]
- так проще. :D
Я мог бы написать и :
[vba]
Код
.Range("w15:Bn" & n).PasteSpecial Paste:=xlPasteValues
[/vba]
или
[vba]
Код
.Range("W15:BN" & n).PasteSpecial Paste:=xlPasteValues
[/vba]
Или я не понял вопроса?

Автор - SLAVICK
Дата добавления - 08.04.2016 в 15:41
китин Дата: Пятница, 08.04.2016, 15:48 | Сообщение № 14
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Я же копирую только формат для них - значения не трогаются.
нет .их вообще не надо.туда, куда копирую они будут только утяжелять.в оригинале почти 500 столбцов.
Или я не понял вопроса?

ответ исчерпывающий. все правильно понял. спасибо. я думал, что разное написание W и w несет какую то сысловую нагрузку


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852


Сообщение отредактировал китин - Пятница, 08.04.2016, 15:50
 
Ответить
Сообщение
Я же копирую только формат для них - значения не трогаются.
нет .их вообще не надо.туда, куда копирую они будут только утяжелять.в оригинале почти 500 столбцов.
Или я не понял вопроса?

ответ исчерпывающий. все правильно понял. спасибо. я думал, что разное написание W и w несет какую то сысловую нагрузку

Автор - китин
Дата добавления - 08.04.2016 в 15:48
SLAVICK Дата: Пятница, 08.04.2016, 16:20 | Сообщение № 15
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Так что ли?:
[vba]
Код
Sub d()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .ShowAllData
        .Range("$A$14:$BN$" & n).AutoFilter Field:=22, Criteria1:="<1", _
                Operator:=xlAnd
        .Range("$A$15:$a$" & n).SpecialCells(xlCellTypeVisible).EntireRow.Delete
        .ShowAllData
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .Columns("F:T").Delete Shift:=xlToLeft
    End With
    For Each wbN In Array("сварка.xlsx", "сборка.xlsx", "механика.xlsx")

        Set wb = Workbooks.Open(awb.Path & "\" & wbN)
        
        With wb.Sheets(1)
            n1 = .Cells(.Rows.Count, 1).SpecialCells(xlLastCell).Row
            .Rows("15:" & n1).Clear
            awb.Sheets(1).Range("A15:AZ" & n).Copy
            .Range("A15").PasteSpecial Paste:=xlPasteValues
            .Range("a15").PasteSpecial Paste:=xlPasteFormats
        End With
        Application.CutCopyMode = False
        wb.Close True
    Next
End Sub
[/vba]
К сообщению приложен файл: forum1.zip (92.9 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеТак что ли?:
[vba]
Код
Sub d()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .ShowAllData
        .Range("$A$14:$BN$" & n).AutoFilter Field:=22, Criteria1:="<1", _
                Operator:=xlAnd
        .Range("$A$15:$a$" & n).SpecialCells(xlCellTypeVisible).EntireRow.Delete
        .ShowAllData
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        .Columns("F:T").Delete Shift:=xlToLeft
    End With
    For Each wbN In Array("сварка.xlsx", "сборка.xlsx", "механика.xlsx")

        Set wb = Workbooks.Open(awb.Path & "\" & wbN)
        
        With wb.Sheets(1)
            n1 = .Cells(.Rows.Count, 1).SpecialCells(xlLastCell).Row
            .Rows("15:" & n1).Clear
            awb.Sheets(1).Range("A15:AZ" & n).Copy
            .Range("A15").PasteSpecial Paste:=xlPasteValues
            .Range("a15").PasteSpecial Paste:=xlPasteFormats
        End With
        Application.CutCopyMode = False
        wb.Close True
    Next
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 08.04.2016 в 16:20
китин Дата: Суббота, 09.04.2016, 10:04 | Сообщение № 16
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Слава спасибо.Но столбцы c F по T вообще не нужны. А по факту в копиях они остаются с 1 по 15 строчу, а ниже 15 строки все смещается влево на это кол-во столбцов killed
К сообщению приложен файл: 7745238.xlsx (25.7 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеСлава спасибо.Но столбцы c F по T вообще не нужны. А по факту в копиях они остаются с 1 по 15 строчу, а ниже 15 строки все смещается влево на это кол-во столбцов killed

Автор - китин
Дата добавления - 09.04.2016 в 10:04
китин Дата: Суббота, 09.04.2016, 10:55 | Сообщение № 17
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Вот попытался тут сваять какую то ерунду по копированию части таблицы в другую книгу. А вот как прописать диапазоны, что бы они искали последнюю заполненную ячейку не получается.
[vba]
Код
Sub perenos()
    Range("A14:E11228,AEU14:AEW11228,AEZ14:AEZ11228,AFC14:AFC11228") _
        .Select
    Selection.Copy
    Windows("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Activate
    Range("A3").Select
    ActiveSheet.Paste
    Windows("ПЛАН  АПРЕЛЬ.xlsm").Activate
End Sub
[/vba] поытался сделать вот так
[vba]
Код
Sub perenos()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
    Range("$A$14:$E$ & n,$AEU$14:$AEW$ & n,$AEZ$14:$AEZ$ & n,$AFC$14:$AFC$ & n") _
        .Select
    Selection.Copy
    Windows("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Activate
    Range("A3").Select
    ActiveSheet.Paste
    Windows("ПЛАН  АПРЕЛЬ.xlsm").Activate
End Sub
[/vba] ругается уже на первой строке %)
К сообщению приложен файл: 9058670.gif (11.1 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852


Сообщение отредактировал китин - Суббота, 09.04.2016, 11:04
 
Ответить
СообщениеВот попытался тут сваять какую то ерунду по копированию части таблицы в другую книгу. А вот как прописать диапазоны, что бы они искали последнюю заполненную ячейку не получается.
[vba]
Код
Sub perenos()
    Range("A14:E11228,AEU14:AEW11228,AEZ14:AEZ11228,AFC14:AFC11228") _
        .Select
    Selection.Copy
    Windows("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Activate
    Range("A3").Select
    ActiveSheet.Paste
    Windows("ПЛАН  АПРЕЛЬ.xlsm").Activate
End Sub
[/vba] поытался сделать вот так
[vba]
Код
Sub perenos()
Dim n&, wb As Workbook, awb As Workbook, wbN, n1
Set awb = ThisWorkbook
On Error Resume Next
    With awb.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
    Range("$A$14:$E$ & n,$AEU$14:$AEW$ & n,$AEZ$14:$AEZ$ & n,$AFC$14:$AFC$ & n") _
        .Select
    Selection.Copy
    Windows("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Activate
    Range("A3").Select
    ActiveSheet.Paste
    Windows("ПЛАН  АПРЕЛЬ.xlsm").Activate
End Sub
[/vba] ругается уже на первой строке %)

Автор - китин
Дата добавления - 09.04.2016 в 10:55
KuklP Дата: Суббота, 09.04.2016, 12:48 | Сообщение № 18
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Попробуй так, файл(ы) не смотрел:
[vba]
Код
Sub perenos()
    Dim n&
'    On Error Resume Next
    With ThisWorkbook.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        Intersect(.Range("A:E,AEU:AEW,AEZ:AEZ,AFC:AFC"), .Range("14:" & n)).Copy _
                Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
    End With
End Sub
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Суббота, 09.04.2016, 13:09
 
Ответить
СообщениеПопробуй так, файл(ы) не смотрел:
[vba]
Код
Sub perenos()
    Dim n&
'    On Error Resume Next
    With ThisWorkbook.Sheets(1)
        n = .Cells(.Rows.Count, 2).End(xlUp).Row
        Intersect(.Range("A:E,AEU:AEW,AEZ:AEZ,AFC:AFC"), .Range("14:" & n)).Copy _
                Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
    End With
End Sub
[/vba]

Автор - KuklP
Дата добавления - 09.04.2016 в 12:48
китин Дата: Понедельник, 11.04.2016, 08:28 | Сообщение № 19
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Спасибо Сергей, но на этой строчке
Код
Intersect(.Range("A:E,AEU:AEW,AEZ:AEZ,AFC:AFC"), .Range("14:" & n)).Copy _
                Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
останавливается

[p.s.]а файла и нету :D
К сообщению приложен файл: 2374851.gif (53.4 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеСпасибо Сергей, но на этой строчке
Код
Intersect(.Range("A:E,AEU:AEW,AEZ:AEZ,AFC:AFC"), .Range("14:" & n)).Copy _
                Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
останавливается

[p.s.]а файла и нету :D

Автор - китин
Дата добавления - 11.04.2016 в 08:28
KuklP Дата: Понедельник, 11.04.2016, 08:35 | Сообщение № 20
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Лист не указал. Вот здесь:
[vba]
Код
Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
[/vba]
Сам осилишь? :)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Понедельник, 11.04.2016, 09:28
 
Ответить
СообщениеЛист не указал. Вот здесь:
[vba]
Код
Workbooks("диспетчерская таблица АПРЕЛЬ 2016г. опыт.xlsm").Range("A3")
[/vba]
Сам осилишь? :)

Автор - KuklP
Дата добавления - 11.04.2016 в 08:35
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выборочное копирование диапазонов таблицы в 4 разные книги (Макросы/Sub)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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