|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|
Как сравнить первые столбцы двух книг Экселя и выявить разницу?04.08.2011, 15:53. Показов 6231. Ответов 13
Метки нет (Все метки)
Добрый день, уважаемые!
Прошу вашей помощи в следующей задаче: есть 2 файла в одной папке:Old.xls и New.xls . В первом столбце этих файлов содержатся имена. для файла Old надо написать макрос, который выявлял в файле New новые имена и записывал их в первый столбец файла Old в конце списка. К примеру: Old.xls Петр Иван Сергей new.xls Сергей Олег Семен Петр в итоге файл old.xls должен быть следующего вида: Петр Иван Сергей Олег Семен надеюсь на вашу помощь =)
0
|
|
| 04.08.2011, 15:53 | |
|
Ответы с готовыми решениями:
13
Сравнить списки двух книг Сравнить данные двух столбцов разных книг |
|
Сумрак
|
||||||
| 05.08.2011, 14:38 | ||||||
|
||||||
|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|
| 07.08.2011, 09:56 [ТС] | |
|
Эм... эта часть мне как раз понятна=)
непонятно следующее - 1. каким образом R1 и R2 -становятся двумя книгами ? R1='old.xls', или по-другому? 2. if mBool=false ...тут не найдено.. и выполняется код по внесению нового имени end if а как он выполняется? 3. и что за переменные ws1 и ws2?
0
|
|
|
22 / 5 / 1
Регистрация: 05.09.2010
Сообщений: 370
|
||||||
| 08.08.2011, 07:52 | ||||||
|
один из вариантов. Специально сделал через массив...
0
|
||||||
|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|
| 08.08.2011, 12:21 [ТС] | |
|
=) спасибо.
Вот только где-то в этом месте у меня ошибка выскакивает- Application.ScreenUpdating = False Workbooks.Open Filename:='C:TempNew Name.xls' yy = 2 вылезает ошибка 1004, Application-defined or object-defined error
0
|
|
|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|||||||||||
| 08.08.2011, 13:06 [ТС] | |||||||||||
|
с синтаксисом разобралась. возникла новая проблема - книга new.xls открывается, но макрос с ней ничего не делает - он заново пробегает файл old.xls
/*здесь все нормально*/
0
|
|||||||||||
|
22 / 5 / 1
Регистрация: 05.09.2010
Сообщений: 370
|
|
| 08.08.2011, 14:50 | |
|
После того как файл открывается, он сразу становится активным.
Сколько листов в этой книге? Когда файл(new) открывается, какой лист активен? Можно прогнать программу по шагам. На той строчке кода, где надо сделать остановку, в режиме редактирования, нажмите F9 Запустите программу, она дойдет до этого места, и остановится. Далее нажимайте на F8 и посматривайте что делает Excel. Application.ScreenUpdating = False - гасит передергивание экрана, можно убрать. y - счетчик по строкам в старом файле yy - счетчик по строкам в новом файле
0
|
|
|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|
| 08.08.2011, 15:28 [ТС] | |
|
>После того как файл открывается, он сразу становится активным.
>Сколько листов в этой книге? стандартно, 3 >Когда файл(new) открывается, какой лист активен? активным становится лист1 файла new >Запустите программу, она дойдет до этого места, и остановится. Далее нажимайте на F8 и посматривайте что делает Excel. это я уже делала. поставила якоря (debug->Run Watch) на следующие переменные: y Cells(y, 1) yy Cells(yy, 1) проверка показала, что значениями Cells(yy, 1)становятся значения ячеек первого столбца файла old.xls и, несмотря на то, что в одном файле 3 строчки. а в другом 5, итоговые значения переменных у и уу равны 4 (отсюда было высказано предположение, что файл old просто просматривается 2 раза.) Вот, в общем ^^; если что - мое мыло sakura92@mail.ru -могу выслать оба файла для проверки.
0
|
|
|
1 / 1 / 0
Регистрация: 19.05.2011
Сообщений: 80
|
||||||
| 08.08.2011, 17:42 | ||||||
|
Предлагаю Вам свой вариант кода.
Для сравнения пользуюсь функцией поиска на листе:
0
|
||||||
|
1 / 1 / 0
Регистрация: 19.05.2011
Сообщений: 80
|
|
| 08.08.2011, 17:50 | |
|
Приведенный макрос у меня находится в книге Old.
В примере оба файла расположены в текущей папке.
0
|
|
|
22 / 5 / 1
Регистрация: 05.09.2010
Сообщений: 370
|
|
| 09.08.2011, 06:58 | |
|
Проблема в том, что макрос надо вставить в МОДУЛЬ, а не в лист
0
|
|
|
1 / 1 / 0
Регистрация: 19.05.2011
Сообщений: 80
|
|
| 09.08.2011, 10:22 | |
|
Приведенный макрос находится в отдельном модуле в книге Old.
Его можно поместить в модуль любой книги. Только тогда надо будет добавить открытие книги Old. В макросе приведен алгоритм решения, который работает очень быстро даже с большими массивами. А куда поместить макрос - решайте сами и добавляйте в него, что считаете необходимым.
0
|
|
|
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 6
|
|
| 15.08.2011, 16:08 [ТС] | |
|
Спасибо большое всем! =)
0
|
|
|
Сумрак
|
||||||
| 15.08.2011, 21:19 | ||||||
|
||||||
| 15.08.2011, 21:19 | |
|
Помогаю со студенческими работами здесь
14
Сравнить первые десять символов двух строк Сравнить первые 5 символов двух заданных строк Как в Делфи сравнить 2 числа и выявить наибольшее, использую 2 массива Как автоматически сравнить 2 модуля VBA разных книг? Как сравнить 2 столбца и при совпадении вычислить разницу и относительное значение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|