Поиск заголовков, копирование в том же порядке на другой лист - PullRequest
0 голосов
/ 04 февраля 2020

Можно ли искать по столбцу заголовка в VBA?

Желаемая цель - найти заголовок, скопировать весь столбец на лист2. Заголовки должны быть скопированы в порядке их появления в столбце заголовков. После копирования 3 столбцов необходимо вставить пустой столбец, затем следующие 3, затем снова пустой столбец и т. Д.

Мне удалось это сделать, когда заголовки находятся в списке. Но я борюсь, когда они в колонке, не так опытны в VBA.

i

1 Ответ

0 голосов
/ 04 февраля 2020
Sub CopyCols()
    Application.ScreenUpdating = False
    Dim LastRow As Long, header As Range, foundHeader As Range, lCol As Long, srcWS As Worksheet, desWS As Worksheet
    Set srcWS = Sheets("Sheet1")
    Set desWS = Sheets("Sheet2")
    LastRow = srcWS.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    lCol = desWS.Cells(1, Columns.Count).End(xlToLeft).Column
    For Each header In desWS.Range(desWS.Cells(1, 1), desWS.Cells(1, lCol))
        Set foundHeader = srcWS.Rows(1).Find(header, LookIn:=xlValues, lookat:=xlWhole)
        If Not foundHeader Is Nothing Then
            srcWS.Range(srcWS.Cells(2, foundHeader.Column), srcWS.Cells(LastRow, foundHeader.Column)).Copy desWS.Cells(2, header.Column)
        End If
    Next header
    Application.ScreenUpdating = True
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...