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

Вход

Регистрация

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

 

= Мир MS Excel/Скопировать каждую пятую строку и разбить по столбцам. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Скопировать каждую пятую строку и разбить по столбцам. (Макросы/Sub)
Скопировать каждую пятую строку и разбить по столбцам.
Amator Дата: Среда, 27.02.2019, 20:39 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 107
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Здраствуйте. Помогите, пожалуйста . Неоходимо на листе "БАЗА" в диапазоне "І8:Т28" скопировать содержимое каждой пятой строки и вставить на лист3 в диапазон "F10:AM14" в каждую строку , но столбцы разбить через два (как в примере).Заранее спасибо.
К сообщению приложен файл: 5441151.xlsm (17.5 Kb)
 
Ответить
СообщениеЗдраствуйте. Помогите, пожалуйста . Неоходимо на листе "БАЗА" в диапазоне "І8:Т28" скопировать содержимое каждой пятой строки и вставить на лист3 в диапазон "F10:AM14" в каждую строку , но столбцы разбить через два (как в примере).Заранее спасибо.

Автор - Amator
Дата добавления - 27.02.2019 в 20:39
_Boroda_ Дата: Среда, 27.02.2019, 21:28 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Так нужно?
[vba]
Код
Sub tt()
    With Sheets("БАЗА")
        h1_ = 5
        c0_ = 9
        nc_ = 12
        r0_ = 8
        nr_ = .Cells(.Rows.Count, c0_).End(3).Row - r0_ + 1
        ar = .Cells(r0_, c0_).Resize(nr_, nc_)
    End With
    h2_ = 3
    str_ = nr_ / h1_ + 1
    r00_ = 10
    c00_ = 6
    st_ = (nc_ - 1) * h2_ + 1
    ar1 = Cells(r00_, c00_).Resize(str_, st_)
    For i = 1 To str_
        For j = 1 To nc_
            ar1(i, (j - 1) * h2_ + 1) = ar((i - 1) * h1_ + 1, j)
        Next j
    Next i
    Cells(r00_, c00_).Resize(str_, st_) = ar1
End Sub
[/vba]
К сообщению приложен файл: 5441151_1.xlsm (22.7 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеТак нужно?
[vba]
Код
Sub tt()
    With Sheets("БАЗА")
        h1_ = 5
        c0_ = 9
        nc_ = 12
        r0_ = 8
        nr_ = .Cells(.Rows.Count, c0_).End(3).Row - r0_ + 1
        ar = .Cells(r0_, c0_).Resize(nr_, nc_)
    End With
    h2_ = 3
    str_ = nr_ / h1_ + 1
    r00_ = 10
    c00_ = 6
    st_ = (nc_ - 1) * h2_ + 1
    ar1 = Cells(r00_, c00_).Resize(str_, st_)
    For i = 1 To str_
        For j = 1 To nc_
            ar1(i, (j - 1) * h2_ + 1) = ar((i - 1) * h1_ + 1, j)
        Next j
    Next i
    Cells(r00_, c00_).Resize(str_, st_) = ar1
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 27.02.2019 в 21:28
Amator Дата: Среда, 27.02.2019, 21:39 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 107
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, большое Вам спасибо! Именно так и нужно.
 
Ответить
Сообщение_Boroda_, большое Вам спасибо! Именно так и нужно.

Автор - Amator
Дата добавления - 27.02.2019 в 21:39
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Скопировать каждую пятую строку и разбить по столбцам. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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