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

Вход

Регистрация

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

 

= Мир MS Excel/Копирование на другой лист без переключения листов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование на другой лист без переключения листов (Макросы/Sub)
Копирование на другой лист без переключения листов
drugojandrew Дата: Среда, 26.02.2020, 22:37 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Приветствую.
Подскажите, пожалуйста, как можно реализовать этот код:
[vba]
Код
    ks = 2 ' интервал
    k1 = 1 ' столбец старта, откуда начинаем
    k2 = 5 ' кол-во вставок
    k3 = ks * k2 + k1
    y = 0
    
    For i = k1 + ks - 1 To k3 Step ks
        ActiveSheet.Next.Select
        NewWeek.Range(Cells(1, i - 1), Cells(43, i - 1)).Copy
        ActiveSheet.Previous.Select
        OldWeek.Range(Cells(1, i), Cells(1, i)).PasteSpecial
        
    Next i
[/vba]
без переключения листов.
Пример приложен.
К сообщению приложен файл: Primer.xls(45.0 Kb)
 
Ответить
СообщениеПриветствую.
Подскажите, пожалуйста, как можно реализовать этот код:
[vba]
Код
    ks = 2 ' интервал
    k1 = 1 ' столбец старта, откуда начинаем
    k2 = 5 ' кол-во вставок
    k3 = ks * k2 + k1
    y = 0
    
    For i = k1 + ks - 1 To k3 Step ks
        ActiveSheet.Next.Select
        NewWeek.Range(Cells(1, i - 1), Cells(43, i - 1)).Copy
        ActiveSheet.Previous.Select
        OldWeek.Range(Cells(1, i), Cells(1, i)).PasteSpecial
        
    Next i
[/vba]
без переключения листов.
Пример приложен.

Автор - drugojandrew
Дата добавления - 26.02.2020 в 22:37
krosav4ig Дата: Четверг, 27.02.2020, 01:37 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2346
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
как-то так [vba]
Код
Sub zzzz()
    Dim OldWeek As Worksheet, NewWeek As Worksheet
    Dim i As Long, Rng1 As Range, Rng2 As Range

    Set NewWeek = Sheets("New")
    Set OldWeek = Sheets("Old")

    ks = 2 ' интервал
    k1 = 1 ' столбец старта, откуда начинаем
    k2 = 5 ' кол-во вставок
    k3 = ks * k2 + k1
    y = 0
    
    For i = k1 + ks - 1 To k3 Step ks
        With NewWeek
            With .Range(.Cells(1, i - 1), .Cells(43, i - 1))
                .Copy
                OldWeek.Range(.Address).Offset(, 1).PasteSpecial
            End With
        End With
    Next i
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениекак-то так [vba]
Код
Sub zzzz()
    Dim OldWeek As Worksheet, NewWeek As Worksheet
    Dim i As Long, Rng1 As Range, Rng2 As Range

    Set NewWeek = Sheets("New")
    Set OldWeek = Sheets("Old")

    ks = 2 ' интервал
    k1 = 1 ' столбец старта, откуда начинаем
    k2 = 5 ' кол-во вставок
    k3 = ks * k2 + k1
    y = 0
    
    For i = k1 + ks - 1 To k3 Step ks
        With NewWeek
            With .Range(.Cells(1, i - 1), .Cells(43, i - 1))
                .Copy
                OldWeek.Range(.Address).Offset(, 1).PasteSpecial
            End With
        End With
    Next i
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 27.02.2020 в 01:37
drugojandrew Дата: Четверг, 27.02.2020, 11:17 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
krosav4ig, спасибо!
 
Ответить
Сообщениеkrosav4ig, спасибо!

Автор - drugojandrew
Дата добавления - 27.02.2020 в 11:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование на другой лист без переключения листов (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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