step-top7
Гость
|
|
« : 02-06-2009 17:35 » |
|
Итак, есть два документа А и Б (правда можно создать доп. лист в одной книге), в одном и во втором документе есть столбцы с тел. номерами (строки в первом документе не совпадают с строками во втором), нужно найти ячейку А1 в документе А которая соответствует ячейке в документе Б А4, и сопировать в документ Б с документа А ячейки B1, C1, D1, E1. Возможно ли такое сотворить, если да то как?
|
|
|
Записан
|
|
|
|
step-top7
Гость
|
|
« Ответ #1 : 02-06-2009 17:43 » |
|
ах да, мелкое дополнение, из ячеек B1, C1, D1, E1 документа А, в ячейки B4, C4, D4, E4 документа В
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #2 : 02-06-2009 17:44 » |
|
step-top7, есть такой простой способ: включаешь запись макроса, выполняешь все нужные действия руками, останавливаешь запись и изучаешь полученный код макроса.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
step-top7
Гость
|
|
« Ответ #3 : 02-06-2009 17:51 » |
|
спасибо большое, если честно я ламер в VBA, так что извини если тупые вопросы. сделал как ты говорил выдало такое Sheets("Лист1").Select Range("G3").Select Selection.Copy Sheets("Лист2").Select Range("K1265").Select Application.CutCopyMode = False Selection.Copy Sheets("Лист1").Select Range("H3").Select ActiveSheet.Paste а поиска номера на листе 2 нету подскажи как сделать плз.
|
|
|
Записан
|
|
|
|
step-top7
Гость
|
|
« Ответ #4 : 02-06-2009 18:01 » |
|
да и мне нужно сравнивать ячейки одного столбца, с ячейками другого, а здесь просто выделил, скопировал, вставил такое неподойдет
|
|
|
Записан
|
|
|
|
step-top7
Гость
|
|
« Ответ #5 : 02-06-2009 18:15 » |
|
Пример Документ А Документ Б Телефон Баланс Телефон Баланс 1шт.-676561944 -518,15 4014494 1шт.-673114555 -316,22 5049913 1шт.-674014549 -263,37 5048142 1шт.-673236460 -171,36 5048123 1шт.-676561998 -136,14 6561998 1шт.-675049406 -36,3 3114555 1шт.-675049824 -35,7 3236460 1шт.-675047021 -26,93 5048135 1шт.-674014494 -22,31 6561944 1шт.-675048109 -21,25 4014549 1шт.-675048135 -21,25 5049824 1шт.-675048123 -21,25 5047021 1шт.-675048142 -18,86 5048109 1шт.-675049913 -18,69 5049406
нужно перенести баланс с одного документа в другой, и номеров оч. много
|
|
|
Записан
|
|
|
|
HandKot
Молодой специалист
Offline
|
|
« Ответ #6 : 03-06-2009 09:02 » |
|
поиском занимается ВПР или метод Find объекта Range
|
|
|
Записан
|
I Have Nine Lives You Have One Only THINK!
|
|
|
step-top7
Гость
|
|
« Ответ #7 : 03-06-2009 11:09 » |
|
А можно как-нибудь поподробнее, или скрипт, или пример формулы
|
|
|
Записан
|
|
|
|
HandKot
Молодой специалист
Offline
|
|
« Ответ #8 : 03-06-2009 18:12 » |
|
примерно так, но .... F1 Вам в руки Public Sub test() Dim i As Integer Dim sNumber As String Dim rFind As Range Dim a As Variant, b As Variant, c As Variant, d As Variant For i = 2 To 100 'что ищем sNumber = Trim(ThisWorkbook.Worksheets(1).Cells(i, 1)) 'определяем диаплзон поиска With Workbooks("Книга1").Worksheets(1).Range("c1:c500") 'ищем Set rFind = .Find(What:=sNumber, LookIn:=xlValues, MatchCase:=False) 'проверяем что нашли If Not rFind Is Nothing Then 'берем значения из строки a = rFind.Offset(, -2).Value b = rFind.Offset(, -1).Value c = rFind.Value d = rFind.Offset(, 1).Value 'вставляем результат поиска ThisWorkbook.Worksheets(1).Cells(i, 2) = a ThisWorkbook.Worksheets(1).Cells(i, 3) = b ThisWorkbook.Worksheets(1).Cells(i, 4) = c ThisWorkbook.Worksheets(1).Cells(i, 5) = d End If End With Next i End Sub
|
|
|
Записан
|
I Have Nine Lives You Have One Only THINK!
|
|
|
step-top7
Гость
|
|
« Ответ #9 : 03-06-2009 21:12 » |
|
Спасибо большое!!!
|
|
|
Записан
|
|
|
|
|