Добрый день! Очень прошу помощи в доработке макроса.
Дано:
A | B | ----------------------------- 10.0.10.14 | 10.0.10.16 | 10.0.10.15 | 10.0.10.14 | 10.0.10.16 | 10.0.10.23 |
Хочется:
A | B | Нет совпадений | --------------------------------------------------------------------------------------- 10.0.10.14 (зелененьким) | 10.0.10.16 (зелененьким) | 10.0.10.15 10.0.10.15 | 10.0.10.14 (зелененьким) | 10.0.10.23 10.0.10.16 (зелененьким) | 10.0.10.23 |
Или как грамотнее решить такую задачу. Заранее спасибо за любую помощь!
[vba]
Код
Sub s_Test() Dim v_Sh As Worksheet Dim v_Rng As Range, v_Cell As Range Dim v_Var As Double
Set v_Sh = ActiveSheet Set v_Rng = Intersect(v_Sh.Columns(1), v_Sh.UsedRange)
On Error Resume Next For Each v_Cell In v_Rng.Cells If v_Cell <> Empty Then v_Var = WorksheetFunction.Match(v_Cell, v_Sh.Columns(2), 0) If Err.Number <> 0 Then Cells(v_Cell, 5) = Cells(v_Cell, 1) Err.Clear Else v_Cell.Interior.ColorIndex = 4 End If End If Next v_Cell End Sub
[/vba]
Добрый день! Очень прошу помощи в доработке макроса.
Дано:
A | B | ----------------------------- 10.0.10.14 | 10.0.10.16 | 10.0.10.15 | 10.0.10.14 | 10.0.10.16 | 10.0.10.23 |
Хочется:
A | B | Нет совпадений | --------------------------------------------------------------------------------------- 10.0.10.14 (зелененьким) | 10.0.10.16 (зелененьким) | 10.0.10.15 10.0.10.15 | 10.0.10.14 (зелененьким) | 10.0.10.23 10.0.10.16 (зелененьким) | 10.0.10.23 |
Или как грамотнее решить такую задачу. Заранее спасибо за любую помощь!
[vba]
Код
Sub s_Test() Dim v_Sh As Worksheet Dim v_Rng As Range, v_Cell As Range Dim v_Var As Double
Set v_Sh = ActiveSheet Set v_Rng = Intersect(v_Sh.Columns(1), v_Sh.UsedRange)
On Error Resume Next For Each v_Cell In v_Rng.Cells If v_Cell <> Empty Then v_Var = WorksheetFunction.Match(v_Cell, v_Sh.Columns(2), 0) If Err.Number <> 0 Then Cells(v_Cell, 5) = Cells(v_Cell, 1) Err.Clear Else v_Cell.Interior.ColorIndex = 4 End If End If Next v_Cell End Sub
Большое спасибо за ответ. Правила прочитал. Столбец А - адреса1 Столбец B - адреса 2 Столбец C - нет совпадений. Куда помещаются значения из ячеек, которые содержатся только в А или только в B
Большое спасибо за ответ. Правила прочитал. Столбец А - адреса1 Столбец B - адреса 2 Столбец C - нет совпадений. Куда помещаются значения из ячеек, которые содержатся только в А или только в BKastielle
[offtop]руки гуру - такие штуки вырастают лишь там где надо на концах у них растут пальцы а на пальцах у гуру ногти под ногтями сидит мудрилка пишет макросы всяко-разно или формулы там и проча а мозги для гур не потребны не почувствовать не потрогать да и выглядят некрасиво то ли дело у гуру - руки! (впрочем ноги наверно тоже)[/offtop]
[offtop]руки гуру - такие штуки вырастают лишь там где надо на концах у них растут пальцы а на пальцах у гуру ногти под ногтями сидит мудрилка пишет макросы всяко-разно или формулы там и проча а мозги для гур не потребны не почувствовать не потрогать да и выглядят некрасиво то ли дело у гуру - руки! (впрочем ноги наверно тоже)[/offtop]ikki
помощь по Excel и VBA ikki@fxmail.ru, icq 592842413, skype alex.ikki
Сообщение отредактировал ikki - Пятница, 22.03.2013, 23:34
это формула массива и введена она в диапазон ячеек выделяете бОльший диапазон - например, C2:C5000 в строке формул меняете формулу (16 на 5000, везде, где встретится) нажимаете Ctrl+Shift+Enter
пс. но на 5000, скорее всего, это будет очень долго пересчитываться. лучше макрос.
это формула массива и введена она в диапазон ячеек выделяете бОльший диапазон - например, C2:C5000 в строке формул меняете формулу (16 на 5000, везде, где встретится) нажимаете Ctrl+Shift+Enter
пс. но на 5000, скорее всего, это будет очень долго пересчитываться. лучше макрос.ikki
помощь по Excel и VBA ikki@fxmail.ru, icq 592842413, skype alex.ikki
ikki, спасибо, Вы правы. Формулу изменил по вышей инструкции, но ее отработка на 5000 строк занимает 43 минуты по одному столбцу. Поэтому всё таки прошу помощи с макросом.
ikki, спасибо, Вы правы. Формулу изменил по вышей инструкции, но ее отработка на 5000 строк занимает 43 минуты по одному столбцу. Поэтому всё таки прошу помощи с макросом.Kastielle