поиск значений в книге и копирование соот данных

Программирование на Visual Basic for Applications
xitriy
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 22.03.2012 (Чт) 9:49

поиск значений в книге и копирование соот данных

Сообщение xitriy » 22.03.2012 (Чт) 10:09

Помогите пожалуйста с задачкой:
Имеется 2 экселевских файла("книга1" и "книга2").
1) "книга1". нужно перебрать все значения в столбце А (А1,А2,.....А14000,.. до конца)
2)Для каждого из этих значений ищем совпадения в "книга2", столбик В (в книге несколько листов)
3)при нахождении совпадения, копируем значение столбца Е соответствующей строки("книга2"), в "книга1" в столбец W строки искомого значения.

Буду очень признателен за помощь.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: поиск значений в книге и копирование соот данных

Сообщение Viper » 22.03.2012 (Чт) 18:33

А где вопрос?
Весь мир матрица, а мы в нем потоки байтов!

Template
Обычный пользователь
Обычный пользователь
 
Сообщения: 73
Зарегистрирован: 09.09.2006 (Сб) 18:03

Re: поиск значений в книге и копирование соот данных

Сообщение Template » 22.03.2012 (Чт) 20:44

xitriy писал(а):(в книге несколько листов)

Это означает, что нужно искать во всех раб.листах этой книги ?

xitriy
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 22.03.2012 (Чт) 9:49

Re: поиск значений в книге и копирование соот данных

Сообщение xitriy » 23.03.2012 (Пт) 7:59

Это означает, что нужно искать во всех раб.листах этой книги ?


Да, искать по всем листам.

xitriy
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 22.03.2012 (Чт) 9:49

Re: поиск значений в книге и копирование соот данных

Сообщение xitriy » 23.03.2012 (Пт) 8:02

Viper писал(а):А где вопрос?


Нужен код, у самого пока неполучается сделать, тока учусь. 8) Заранее благодарен.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: поиск значений в книге и копирование соот данных

Сообщение alibek » 23.03.2012 (Пт) 9:19

xitriy писал(а):Нужен код, у самого пока неполучается сделать, тока учусь. 8) Заранее благодарен.

Не можешь сам, попроси Excel.
Просить надо заклинанием "Запись макроса".
Lasciate ogni speranza, voi ch'entrate.

Template
Обычный пользователь
Обычный пользователь
 
Сообщения: 73
Зарегистрирован: 09.09.2006 (Сб) 18:03

Re: поиск значений в книге и копирование соот данных

Сообщение Template » 23.03.2012 (Пт) 11:43

Обе книги обязательно должны быть открыты, ну и не возбраняется, предварительно указать необходимое расширение, а также индекс или имя раб.листа, используемые в действительности.

Код: Выделить всё
Public Sub Test()
    Dim wb1 As Workbook, wb2 As Workbook
    Dim wsList As Worksheet, strText As String
    Dim rngSource As Range, rngCell As Range, rngResult As Range
   
    Application.ScreenUpdating = False
   
    Set wb1 = Workbooks("Книга1.xls")
    Set wb2 = Workbooks("Книга2.xls")
   
    With wb1.Worksheets(1) 'wb1.Worksheets("Лист1")
         Set rngSource = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
    End With
   
    For Each rngCell In rngSource
        strText = CStr(rngCell.Value)
        For Each wsList In wb2.Worksheets
            Set rngResult = wsList.Columns(2).Find(strText, , xlValues, xlWhole)
            If Not rngResult Is Nothing Then
               rngCell(1, 23).Value = rngResult(1, 4).Value
               Exit For
            End If
        Next
    Next
   
    Application.ScreenUpdating = True
End Sub


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 44

    TopList