Коллеги, приветствую. Excel 2010.
Странно ведёт себя ВПР, я не пойму, глюк это или фича.
Не все глюки могу повторить, но постараюсь объяснить на словах.
Пример в приложении.
Есть выгруженная из 1С таблица, массивная (пример я обрезал). Мне нужно добавить в неё одно поле из другой таблицы.
Ключевое поле - Инвентарный номер. Проблема в том, что во-первых, поле имеет пробелы в конце, и состоит из цифр, причём может иметь один или несколько нулей в начале. С пробелами не ищет. Убираю пробелы - появляется предупреждение, что число хранится в текстовом формате. При преобразовании в числовой формат теряются нули в начале. Кроме того, часть номеров имеет суффикс .1 и так далее до .20, преобразование, опять же, отрабатывает некорректно.
Преобразование может произойти и случайно при просмотре таблицы.
При этом часть ячеек уже находится в числовом формате. По ним поиск тоже не работает.
Т.е. нужно перевести всё в текст, убрать пробелы. Пробовал и задавать формат ячеек Текстовый, и преобразовывать с помощью функции ТЕКСТ(*;0), но она также отрабатывает некорректно.
В конце концов я добился того, что число, очищенное от пробелов, хранится в текстовом виде, уже не функция и полностью соответствует значению ключевого поля во второй таблице, но нифига не находится ВПРом! В результате - Н/Д.
Внимание: если я ставлю курсор на искомое поле второй страницы и копирую его (Ctrl+C), в основной таблице ПОЯВЛЯЕТСЯ значение!
Ещё раз, я просто копирую в буфер обмена искомую ключевую ячейку, я не вношу изменения в ячейку страницы-получателя, значение которой использует ВПР для поиска. Этот феномен, к сожалению, я не сохранил.
Второй феномен, возможно, как-то связанный с этим, тоже на таблицах, выгруженных из 1C. Мне нужно скопировать строку из первой закладки одной такой таблицы в первую закладку другой таблицы, тоже из 1С, с таким же форматом, в её конец. Т.е. в них есть и другие закладки, сделанные вручную, с другим форматом и содержанием.
Помечаю строку в первой таблице, Ctrl-C, активизирую целевую страницу, помечаю строку, Ctrl-"+", и неожиданно вместо необходимой строки появляется совершенно другая, возможно предыдущее состояние буфера. Нажимаю Ctrl+Z - появляется сообщение об ошибке - "Невозможно очистить буфер обмена. Возможно, буфер обмена используется другим приложением." Повторил несколько раз - повторяется. Потом вдруг обратил внимание, что на ВТОРОЙ закладке целевой страницы появилась новая строка, которую я копировал... Что это такое? На всякий случай перезапустил Excel , в процессе чего выгрузил Punto Switcher. Пока не повторяется.
Возможно, это глюк Excel? Кто-то сталкивался с подобным? Может ли быть с этим связано странное поведение, когда ВПР работает после копирования в буфер числа?
Прилагаю файл с более простым содержанием - примеры ключевого поля с разным типом содержания. Задача как-то преобразовать в один тип, пригодный для использования с функцией ВПР(), убрав пробелы, не потеряв нули и сохранить в целости суффиксы .1 - .20.
Странно ведёт себя ВПР, я не пойму, глюк это или фича.
Не все глюки могу повторить, но постараюсь объяснить на словах.
Пример в приложении.
Есть выгруженная из 1С таблица, массивная (пример я обрезал). Мне нужно добавить в неё одно поле из другой таблицы.
Ключевое поле - Инвентарный номер. Проблема в том, что во-первых, поле имеет пробелы в конце, и состоит из цифр, причём может иметь один или несколько нулей в начале. С пробелами не ищет. Убираю пробелы - появляется предупреждение, что число хранится в текстовом формате. При преобразовании в числовой формат теряются нули в начале. Кроме того, часть номеров имеет суффикс .1 и так далее до .20, преобразование, опять же, отрабатывает некорректно.
Преобразование может произойти и случайно при просмотре таблицы.
При этом часть ячеек уже находится в числовом формате. По ним поиск тоже не работает.
Т.е. нужно перевести всё в текст, убрать пробелы. Пробовал и задавать формат ячеек Текстовый, и преобразовывать с помощью функции ТЕКСТ(*;0), но она также отрабатывает некорректно.
В конце концов я добился того, что число, очищенное от пробелов, хранится в текстовом виде, уже не функция и полностью соответствует значению ключевого поля во второй таблице, но нифига не находится ВПРом! В результате - Н/Д.
Внимание: если я ставлю курсор на искомое поле второй страницы и копирую его (Ctrl+C), в основной таблице ПОЯВЛЯЕТСЯ значение!
Ещё раз, я просто копирую в буфер обмена искомую ключевую ячейку, я не вношу изменения в ячейку страницы-получателя, значение которой использует ВПР для поиска. Этот феномен, к сожалению, я не сохранил.
Второй феномен, возможно, как-то связанный с этим, тоже на таблицах, выгруженных из 1C. Мне нужно скопировать строку из первой закладки одной такой таблицы в первую закладку другой таблицы, тоже из 1С, с таким же форматом, в её конец. Т.е. в них есть и другие закладки, сделанные вручную, с другим форматом и содержанием.
Помечаю строку в первой таблице, Ctrl-C, активизирую целевую страницу, помечаю строку, Ctrl-"+", и неожиданно вместо необходимой строки появляется совершенно другая, возможно предыдущее состояние буфера. Нажимаю Ctrl+Z - появляется сообщение об ошибке - "Невозможно очистить буфер обмена. Возможно, буфер обмена используется другим приложением." Повторил несколько раз - повторяется. Потом вдруг обратил внимание, что на ВТОРОЙ закладке целевой страницы появилась новая строка, которую я копировал... Что это такое? На всякий случай перезапустил Excel , в процессе чего выгрузил Punto Switcher. Пока не повторяется.
Возможно, это глюк Excel? Кто-то сталкивался с подобным? Может ли быть с этим связано странное поведение, когда ВПР работает после копирования в буфер числа?
Прилагаю файл с более простым содержанием - примеры ключевого поля с разным типом содержания. Задача как-то преобразовать в один тип, пригодный для использования с функцией ВПР(), убрав пробелы, не потеряв нули и сохранить в целости суффиксы .1 - .20.