![]() |
на самом деле я вопрос еще проще решил, через UltraCompare, сравнивая имеющееся и непрерывный отчет, и наложив фильтр "показывать только измененные строки". Но вообще интересно было бы посмотреть варианты решения, так сказать для общего развития. Вариант со скриптом, не смейтесь, но я как мартышка и очки с ним - так и не нашел куда его приладить :biggrin:
Цитата:
1 2 4 5 7 9 10 а потом заставь эксель найти недостающие и вывести в другую колонку... |
Вложений: 1
для общего развития набросал процедуру. :)
|
Как сделать так, чтоб таблица не учитывала некоторые элемент? А именно графику и буквы. Дело в том, что когда вносишь эти элементы в ячейку, формула не работает.
Речь идет о таблице подсчета времени и без графических элементов и букв она теряет смысл. |
Цитата:
|
Рудко, так как до примера дело не дошло, то могу предположить что в ячейку ты заносишь некоторую информацию которая не соответствует принятым в экселе стандартам. Соответственно формула у тебя не считается. Выхода два:
1. откажись от "графики и букв" 2. пиши свой макрос, который будет понимать и отсеивать "графику и буквы" перед расчетом |
Вот скрипт, http://slil.ru/27685747
Он должен работать как фильтр. Если посмотреть, там всё понятно. В общих словах, он сравнивает инфу из первого и второго листа, и повторяющиеся строки пишет в листе 3, а не повторяющие в листе 4. Лист 1 1111 1111 2222 2222 333 333 444 444 555 555 Лист 2 2222 2222 333 333 444 444 В листе 3 показывает: 2222 2222 333 333 444 444 2222 2222 333 333 444 444 То есть почему то два раза одно и тоже. Как исправить? |
Этот скрипт в каком формате?
|
это 2007 эксель
grooogler, проблемма у тебя в том, что алгоритм не удачный и выполняется два раза. добавь еще одну колонку с единичками - получится вообще непонятно что PS Этот код сравнивает любое количество колонок на точное совпадение листа2 с со строкой на листе1 и данные листа1 скидываются соответственно на 3 и 4 листы. т.е если на листе2 будет строка отсутствующая на листе1 то она вообще ни куда не попадет Код:
Sub Main2() |
Убрал старый код, поставил этот.
Теперь так: 1 лист 1111 1111 2222 2222 333 333 444 444 555 555 2 лист 2222 2222 333 333 444 444 3 лист 2222 2222 333 333 444 444 555 555 4 лист 555 555 А должно быть: 3 лист 2222 2222 333 333 444 444 4 лист 1111 1111 555 555 Скрипт должен сравнивать ячейки в столбцах А листа 1 и 2. Если ячески совпадают - всю соответствующая строка помещается в Лист 3 Если ячески не совпадают - всю соответствующая строка помещается в Лист 4 p.s. http://slil.ru/27696874 |
Извините был напуган (из анекдота)
Подправь две строки выделенные красным. Код:
If ok = Sheets(1).Cells(i, Columns.Count).End(xlToLeft).Column Then |
Теперь верно.
Но нужно чтоб было немного не так. Сравниваться должны в первом и втором листе только ячейки в столбце А. Примеры: А) (1 1 1 2 2 3 3 4 4 (2 2 2 3 3 (3 2 2 3 3 (4 1 1 4 4 Б) (1 1 1 2 2 3 3 4 4zzzzzzz (2 2 2 3 3 4 yyyyyyyyyyyy (3 2 2 3 3 4 4zzzzzzz (4 1 1 |
Цитата:
PS Код:
Sub Main3() |
ПРивет ребята!
Задача такая: имеем 123.txt файл с четкой структурой Шапка |п\п|фам|имя|отч|статус|некий номер| |1|Иванов|Иван|Иваныч|инвалид|123-456-789 00| |2|Петров|Петр|Петрович|ветеран|321-654-987 11| ... |879|Семенов|Семен|Семенович||213-546-879 22| Необходима возможность сортировки по разным полям, например по "некий номер" или по "фам". В самом текстовике не сделаеш, но можно в Экселе. Когда капируеш через буфер в Эксел, то он вставляет каждую строчку в одну ячейку. Но если проставить после "|" ТАБ (Tab), то копируется в другую (следующую) ячейку, и после легко сортируется. Но в ручную проставлять ТАБы сил не хватает. Помогите автоматизировать процесс. И подскажите толковый справочник по VBA |
sysser, в экселе есть замечательный модуль импорта данных. И если текст импортировать им - накакое предварительное редактирование текстовика не понадобится. Просто при импорте надо будет указать ему символ "|" в качестве разделителя ячеек... ;)
|
Не обновляються данные
Проблеммы:
1. знак равно и плюс возле цифер прячутся(не отображаться визуально) 2. дата: например вордовская "11.10" становиться "11.01.1900 2:24:00" В архиве: искодный док(так должно быть в ексель), файл ексель в который я скопировал, файл ексель который изменил типы http://rapidshare.com/files/247806263/berezani.rar.html. Тип "дата" и "текст". Изменяется только при нажатии F2 и enter по каждой ячейке. CTRL+SHIFT+ALT+F9 не помогает. Как можно обновить весь лист? Заранее спасибо. |
Я, конечно, в Excel совсем не спец, но у меня получилось так:
1. Формат - Ячейки - выбрать Текстовый. 2. Знак "+" будет при таком формате ячейки отображаться. 3. А перед знаком равенства поставить пробел и тогда знак "=" тоже отображается. |
Спасибо, получилось. Скажите пожалуйста, как быть с датой?
|
Цитата:
Дата будет в формате 11.10.2009, а отображаться как "11.10" Удачи! |
Цитата:
|
razik, даты в экселе это великое шаманство. Могу только посочувствовать. Дело в том, что в старое доброе DOS-овское время дату записывали в формате 01/10/1980, а микрософт через точку. Теперь он часто путает числа с датами и не полные даты конвертит так как хочет.
Единственный выход из этой ситуации записывать даты всетаки через наклонную черточку. т.к. наклонную черточку он пока еще понимает правильно PS Учти число 1,3 он у тебя обязательно воспримет как дату не зависимо от твоего желания |
Цитата:
|
Judge, оно срабатывает через раз и не понятно по какому принципу.
|
Ну не знаю. Вводил даты копированием и в смежные строчки, и через несколько строк, затем выбирал формат ячейки Дата - 14.3 и везде результат был один: дата 11.10 из Word отображалась в Excel как 11.10. http://www.kolobok.us/smiles/standart/meeting.gif
|
А я пробовал на работе и дома. Результаты разные.
Кстати, если мне набо кинуть в эксель даты, то я их кидаю только в формате с / (наклонная черточка). Проверено. Ошибок не бывает. |
нашел функцию для excel 2007 на русском
люди помогите пожалуйста, просто не сталкивался с такйо функцией как СОПАД.... :))
=ИЛИ(СОВПАД(B2;A2:A4)) Сравнение строки "Виноград" с каждым значением из списка (ЛОЖЬ) вообщем-то мне все-равно аналогично надо сделать только на английском. =OR(.......(B2;A2:A4)) вопрос конечно нелепый, но такой вот абзац )). спасибо. |
1) http://www.imho.ws/misc.php?do=showrules
http://www.imho.ws/search.php Microsoft Excel: Вопросы и ответы +2 клею... 2) http://office.microsoft.com/en-us/excel/HP052090811033.aspx = http://office.microsoft.com/ru-ru/excel/HP052090811049.aspx |
to kasha,
OR(EXACT(B2;A2:A4)) |
Kraft спасибо, а оказалось немного не то что надо )). Эта функция сверяет так сказать левую ячейку с парвой (паралелльно).
а мне так сказать надо, чтобы: в колонке и ячейке А1 значание например "Аня" , а в колонке В у меня идут например 100 ячеек разные имена, ну и например Аня у меня в В35 ячейке. и тогда как результат формулы, в столбец С выводилась бы 1 или 0 или тру или фолс. Есть ли что-то подобное к экселе? |
kasha, функция =ПОИСКПОЗ(<что ищем>;<где ищем>;параметр поиска) не подойдет?
Возвращает номер строки в диапазоне если поиск успешный или #Н/Д если не удачно Только там поимк какой то замудрённый. Учти |
Предвидя вопрос:
Английский аналог функции ПОИСКПОЗ - MATCH И на будущее кому может пригодится: список всех функций по русски и по английски можно найти в файле FUNCS.xls находящемся в папке ...\Microsoft Office\Office12\1049 (для Office 2003; в других версиях пользуем поиск). |
Цитата:
В С1 формулу =IF($A$1=B1;1;0) и протянуть её вниз за нижний правый угол, значения B1...B100 автоматически увеличатся |
[offtop]
EvroStandart, можно и даже нужно так пользоваться... но... kasha ставит вопрос обобщенно и (ну я во всяком случае так рассуждал) простой ответ типа протяни if до конца колонки наврятли понравится. Тем более есть указание на то, что диапазон поиска достаточно большой, соответственно кроме факта наличия или отсутствия возможно необходимо знать где эта запись. А листать 10-15 экранов вниз и искать глазами или использовать фильтацию - лишние телодвижения и напряжения :biggrin: "Лучше потратить лишний день на написание программного кода и получить единственное решение за минуту, [/offtop]Народная мудрость |
"тогда как результат формулы, в столбец С выводилась бы 1 или 0 или тру или фолс"
Я такое объяснение понимаю так: рядом с каждой заполненной ячейкой столбца В должна быть заполненная ячейка в столбце С с результатом сравнения. Функцией это можно сделать только протягивая вручную. Для автоматического заполнения придётся процедуру писать. |
Да, конечно, но было бы желательно услышать все же автора
|
Цитата:
всем спасибо Цитата:
|
Цитата:
|
у меня проблемка "лёкгая", но я уже голову сломала...
у меня в ячейках цифры 0,00 стоят, а по умолчанию 0,000 или даже 0,0000. От этого "итого" неправильно подсчитывается. Уже как только не пробовала формат ячеек менять - всё равно по умолчанию эти последние цифры никуда не уходят, а их до фига в столбце. вручную иx корректировать - глупо, наверняка есть решение и можно поменять формат ячейки. Подскажите, плиз... |
Вложений: 1
Evgeshka,
подходит? |
V0land,
неа, не подходит... всё равно цифры никуда не уходят. пробовала также через "custom". в таблице высвечиваются 2 цифры после запятой, например 130,01 а вот когда на саму ячейку с цифрой нажимаешь, то наверху по умолчанию высвечивается 130,005. Мне надо, чтобы и там и там было одно значение. если я наверху, в функции, стираю вручную последнюю пятёрку - то всё в порядке. но у меня этих цифр от 2000 до 3000. :) |
Evgeshka,
странно. у тебя точно формат Number стоит? я специально привел пример, где цифр после запятой - бесконечное множество) Но если поставить Number и 2 после запятой - оно везде 2 и показывается. Хотя, может, там у тебя где-то округление? Прям щас не подскажу - виртуальную винду уже вырубил ) |
Часовой пояс GMT +4, время: 00:21. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.