![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 24.09.2014
Сообщений: 8
|
![]()
Нужно сравнить данные из вторыx столбцов первого и второго листа и вывести результат на третий лист. Мой макрос делает это без проблем.
Но как только я копирую данные из базы и вставляю их соответственно в первый и второй листы, макрос работает не корректно, а именно не находит никаких совпадений, и пишет напротив каждой строки "не найдено" Sub сравнение() Dim temp, temph Dim source_ As Object, target_ As Object, tocopy_ As Object, x As Range Dim iFirstAddress$, blank_cell As Range Dim cc As Range Set source_ = Sheets(2) Set target_ = Sheets(1) Set tocopy_ = Sheets(3) For Each cc In source_.UsedRange.Columns(2).Cells temp = cc.Value temph = source_.Cells(cc.Row, 5).Value If temp <> "" Then Set x = target_.Columns(2).Find(temp, LookIn:=xlValues, lookat:=xlPart, MatchCase:=True) If Not x Is Nothing Then iFirstAddress = x.Address Do Set x = target_.Columns(2).FindNext(x) If target_.Cells(x.Row, 3).Value <> temph Then Set blank_cell = tocopy_.Cells(tocopy_.Range("a" & Rows.Count).End(xlUp).Row + 1, 1) source_.Cells(cc.Row, 2).Copy blank_cell End If Loop While Not x Is Nothing And x.Address <> iFirstAddress Else Set blank_cell = tocopy_.Cells(tocopy_.Range("a" & Rows.Count).End(xlUp).Row + 1, 1) source_.Cells(cc.Row, 2).Copy blank_cell blank_cell.Offset(0, 2).Value = "не найдено" End If End If Next MsgBox "готово" End Sub |
![]() |
![]() |
![]() |
#2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
вывод:
дело не макросе, а в данных. там действительно нет совпадений.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 24.09.2014
Сообщений: 8
|
![]()
это из первой таблицы(начало, пунктов около 600)
[0291,221,21] АЗС № 221 ГПН-Транзит [0291,230,30] АЗС № 230 ГПН-Транзит [0291,237,37] АЗС № 237 ГПН-Транзит [0860,86,2086] АЗС-86 ГПН [0860,257,2257] АЗС 257 ГПН [0860,257,3257] АЗС 257 ГПН [0860,260,2260] АЗС-260 ГПН это из второй [0291,221,21] АЗС № 221 ГПН-Транзит [0291,230,30] АЗС № 230 ГПН-Транзит [0291,237,37] АЗС № 237 ГПН-Транзит [0863,10,10] АЗС № 210 ГПН Транзит [0863,10,1010] АЗС № 210 ГПН Транзит [0863,11,1011] АЗС № 211 ГПН Транзит [0863,12,12] АЗС № 212 ГПН Транзит [0863,12,2012] АЗС № 212 ГПН Транзит [0863,32,32] АЗС № 232 ГПН Транзит так вот он из второго листа копирует все и пишет не найдено, хотя совпадений 99% нужно найти только один-два отличающихся пунктов |
![]() |
![]() |
![]() |
#4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
макросы не умеют обманывать, нет совпадений - напишет:
Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 24.09.2014
Сообщений: 8
|
![]()
но так есть, может беда в том, что он не видит лист1, как его переименовать в макросе, чтобы он ссылался на первый лист как бы он не назывался?
|
![]() |
![]() |
![]() |
#6 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
и еще макросы не умеют угадывать мысли и делаю то, что написано в макросе, а не то, о чем Вы думаете или думали.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 24.09.2014
Сообщений: 8
|
![]()
в общем получается так.
если я в старой книге где макрос работает, оставляю пару столбцов и вставляю данные из моей таблицы, то макрос работает, если же удалитть все столбцы из старой книги и вставить данные из моей таблицы, макрос перестает работать |
![]() |
![]() |
![]() |
#8 |
Регистрация: 24.09.2014
Сообщений: 8
|
![]()
и еще есть вопрос.
как добавить в третий лист копирование не только 2 колонки, но и третьей?спасибо |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
проблема при копировании одного столбца из одного файла в другой файл | tanunya | Помощь студентам | 0 | 24.02.2012 21:30 |
при открытии другой книги скрипт перестает работать | gramp | Microsoft Office Excel | 5 | 14.02.2011 14:11 |
ПЕРЕСТАЕТ РАБОТАТЬ МАКРОС | Cone | Microsoft Office Excel | 3 | 15.08.2010 13:49 |
Не работает клава а при нажатии на нее перестает работать мышь!! | Дима я | Компьютерное железо | 10 | 02.03.2010 17:10 |
Ошибка при копировании столбца в Excel! | antonchik | Microsoft Office Excel | 1 | 29.07.2008 07:48 |