1

Тема: VBA: Поиск и перемещение данных с одного листа файла на другой

Всем привет! Хочу создать макрос! Задача: есть таблица с заголовками названием контрагентов и данными под этими контрагентами в столбце, нужно найти в заголовке определенного контрагента и скопировать данные под ним в другую таблицу на другом листе, только в горизонтальном положении!!! Буду признателен в оказании помощи!

2

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

Это что, эксель\ворд?

Разработка VBA макросы Excel, Word на заказ.
Сказать спасибо на Юмани

3

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

VBAdevelope
Это эксель

4 (изменено: VBAdevelope, 2023-05-12 16:23:00)

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

Andropov

Sub CopyData()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim searchValue As String
    Dim searchRange As Range, copyRange As Range
    Dim lastRow As Long, curCol As Long
    Dim iCount As Long, j As Long
    
    'Имена листов вводите свои
    Set ws1 = ActiveWorkbook.Worksheets("Лист1")
    Set ws2 = ActiveWorkbook.Worksheets("Лист2")

    searchValue = "Замена разъёма" 'Можно так, а можно
    'iValue = InputBox("Введите заголовок")
    

    Set searchRange = ws1.Rows(1).Find(searchValue, LookIn:=xlValues, LookAt:=xlWhole)

    If searchRange Is Nothing Then
        MsgBox "Ячейка с текстом """ & searchValue & """ не найдена на листе ""Лист1""."
        Exit Sub
    End If

    lastRow = ws1.Cells(ws1.Rows.Count, searchRange.Column).End(xlUp).Row
    curCol = searchRange.Column
    
    Set copyRange = ws1.Range(ws1.Cells(2, curCol), ws1.Cells(lastRow, curCol))
    
    iRowNumber = InputBox("Введите номер строки, куда копировать") 'Это номер строки на листе2
    
    'Этот код используется в том случае, если столбец, в который попадут данные - ниже не пустой,
    'Если пустой, то можно просто скопировать и повернуть
    iCount = copyRange.Rows.Count - 1

        For j = 1 To iCount
            ws2.Cells(iRowNumber, j).Value = copyRange.Cells(j, 1).Value
        Next j

End Sub
Разработка VBA макросы Excel, Word на заказ.
Сказать спасибо на Юмани

5

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

VBAdevelope
Очень признателен! По юмани сказать спасибо не могу, напишите мне на почту andreyglushko555@gmail.com, чтобы обсудить спасибо в другом варианте (например USDT)!

6 (изменено: VBAdevelope, 2023-05-12 16:23:29)

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

Andropov
Не можете - так не можете, это не обязательно, это подпись на сайте, она автоматическая под каждым сообщением . Я криптой не пользуюсь, только ЮМ\киви\вебм.

Разработка VBA макросы Excel, Word на заказ.
Сказать спасибо на Юмани

7

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

VBAdevelope, ознакомьтесь, пожалуйста, с Правилами, отредактируйте свои посты. Обратите внимание на оформление кода, заглавные буквы в начале и точки в конце предложений.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

8

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

teadrinker
Уфф, сложна...

Разработка VBA макросы Excel, Word на заказ.
Сказать спасибо на Юмани

9

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

Не поверю, что для программиста сложно освоить оформление кода на форуме.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

10

Re: VBA: Поиск и перемещение данных с одного листа файла на другой

teadrinker пишет:

сложно освоить оформление кода

Я про точки и большие буквы.

Разработка VBA макросы Excel, Word на заказ.
Сказать спасибо на Юмани