![]() #фанфикс_образовательный #фанфикс_знает_все #проблемы_белого_человека
Знатоки Exel, отзовитесь)) Вот у меня есть два листа с данными, мне нужно вставить на лист 1 данные из ячейки на листе 2 с наименьшим количеством кликов. Это можно сделать элементарно путем ссылки на ячейку на листе 2: =' Лист2 '!A9 - допустим Но есть одна проблема, если лист 2 в дальнейшем подвергается обработке, например, появляются новые строчки, потом я отсортирую все по алфавиту, и какая-нибудь "фиговина1" в ячейке А9 уедет в ячейку А14, а в ячейке А9 появится "фиговина2"... и в листе 1 наступит хаос и мордор. Надеюсь, я понятно объяснила. Есть ли какой-то элегантный способ решить эту проблему? Или единственный доступный выход, это унылый копипаст "фиговины1" с одного листа на другой? Гугл меня не понял))) 20 декабря 2020
|
![]() |
Яэль Киршенбаум
|
Вставить как значения? Но если вы будете менять лист2, на лист1 изменения не попадут
|
![]() |
Гламурное Кисо Онлайн
|
Насчёт элегантности решения не уверен, но я всегда сохраняю один лист чисто под данные, ничего не мешает сделать копию листа 2 на листе 3 и там уже вносить изменения, при которых фиговина 1 в ячейке А9 станет фиговиной 2. Только обычно у меня лист данных это лист 1, а все изменения происходят в последующих листах.
|
![]() |
|
Там не должен наступить хаос, потому что ссылка будет вести на конкретную ячейку. То, что у ячейки поменяется имя, ничего не изменит. Не должно.
|
![]() |
|
Яэль Киршенбаум
вставить как значение это и есть копипаст) Гламурное Кисо не, мне бы хотелось минимализировать количество листов так-то, по идее, можно бы просто не менять ничего в листе 2, новые данные добавлять дальше, и ничего съезжать не будет. Но красоту не наведешь тогда. ElenaBu я проверила уже, меняется. ссылка ведет на ячейку А9. Когда сортируешь лист, в ячейке А9 оказываются другие данные, и все ломается. Если что, это в гугл таблицах. |
![]() |
Яэль Киршенбаум
|
Анаптикс
В смысле? После того, как вы вставили формулы, (ячейка 1 = лист2! ячейка 1), просто выделяет все клетки на листе1, копируете и вставляете. Это намного меньше движений, чем копипастить каждую клетку |
![]() |
Хэлен Онлайн
|
Анаптикс
в экселе не меняется ячейка при наведение красоты. она может сменить имя, если будет меняться место (добавляться/убавляться строки/столбцы), но ссылка будет вести по-прежнему на указанную ячейку. 1 |
![]() |
|
Яэль Киршенбаум
да, кстати, тоже о таком думала, сначала вставлять, потом целым листом отредактировать. Как вариант. Хэлен вот сейчас скачаю гугл таблицу в эксель и проверю. Потому что в гугл таблице меняется. |
![]() |
|
Хэлен
таки когда добавляешь столбцы - не меняется, а когда сортируешь данные, то меняется. Ячейка остается той же самой, а данные уехали. |
![]() |
Хэлен Онлайн
|
Анаптикс
у меня никуда не уезжает. у вас все столбцы/ячейки заполнены? уехать может только если вокруг пустота. |
![]() |
|
Хэлен
странно... смотрите, как у меня: лист 2 заполнен диапазон А1-А9 фиговинами 1-9. Я сортирую для проверки фиговины в обратном порядке, тогда в ячейке А9 получается фиговина1. В листе 1 я делаю ссылку на ячейку А9. Там должна быть фиговина9. Когда я сортирую лист2 в обратном порядке, на листе1 отображается фиговина1. |
![]() |
|
Feature in the Dust
вот я пыталась это нагуглить, но все не то. Вообще я тут заполняю таблицу и поняла, что мне проще один раз скопировать, а потом автозаполнять, потому как по большей части я все равно буду заполнять скопом данные с одного источника, потом с другого. Тыкать по сто раз на другой лист не надо. Но просто любопытно стало, есть такая функция или нет. |
![]() |
Хэлен Онлайн
|
![]() |
|
Хэлен
вот еще бы узнать, где эта настройка! |
![]() |
|
При сортировке что-то там с диапазоном.
|
![]() |
Marlagram Онлайн
|
Вообще, ситуация по описанию напоминает вариант, когда пора переходить на SQL и БД.
;-) 1 |
![]() |
|
В Exel помогает функция ВПР. Правда объяснять сложно. Но попробуем.
Показать полностью
Синтаксис: = ВПР (ключ для поиска; таблица поиска;колонка для извлечения;признак) Как она работает? Допустим, у нас есть таблица - какой клиент сколько принес денег и за что. Столбцы - Фамилия, сумма, услуга Например: Деленн | 1650 | пересадка волос Моллари| 50 | стрижка Леньер| 17| полировка лысины Кош| 90 | протирка скафандра Для простоты объяснения таблица лежит в ячейках А1:С4 на Листе 1. Символами | я отделил ячейки друг от друга. Задача: в отдельную таблицу (пусть и на другом листе) нам надо выдернуть данные по Леньеру и Деленн. Функция =ВПР ('Леньер';Лист1!$А$1:$С$4;3;ЛОЖЬ) выдаст нам результат "полировка лысины". Как именно? 1. Функция ищет ключ "Леньер" в крайней слева колонке таблицы что мы указали в функции ВПР - А1:С4 на Листе 1. 2. Функция берет ту строку, где есть первое точное совпадение (так как признак = ЛОЖЬ). Это будет строка "Леньер| 17| полировка лысины" 3. Из данной строки ВПР выдернет значение третьей ячейки слева (3 - ибо цифру 3 мы поставили в ВПР. Первая ячейка- Леньер, вторая - 17, третья - полировка лысины). Это и есть результат. Соответственно, на листе 2 формируем следующую таблицу (расположена в ячейках А1:В2): A | B Леньер | =ВПР (A1;Лист1!$А$1:$С$4;3;ЛОЖЬ) Деленн | Вместо слова "Леньер" указание на ячейку с этим словом. Протаскиваем формулу вниз и получим следующую таблицу: A | B Леньер | =ВПР (A1;Лист1!$А$1:$С$4;3;ЛОЖЬ) Деленн | =ВПР (A2;Лист1!$А$1:$С$4;3;ЛОЖЬ) Символы $ стоят для того, чтобы при протаскивании функции вниз адресация таблицы не сдвинулась. Или, если брать значения: A | B Леньер | полировка лысины Деленн | пересадка волос А что теперь будет если в исходной таблице отсортировать строки, например, по стоимости? Главное сделать это правильно, чтобы отсортировалась не только колонка В, но и вместе с ней сдвинулись остальные колонки. То есть получить примерно это: Леньер| 17| полировка лысины Моллари| 50 | стрижка Кош| 90 | протирка скафандра Деленн | 1650 | пересадка волос Функция ВПР по-прежнему будет искать в таблице Лист1!$А$1:$С$4 первую сверху строчку, где в крайней левой колонке есть слово "Леньер". По-прежнему найдет строку "Леньер| 17| полировка лысины", которая, правда, здесь находится в ином месте. По-прежнему выдернет нужное - третье слева значение. Тоже самое для Деленн. Результат достигнут! Нюансы: 1. Ключ (то, по чему ищут, в примере - слово Леньер) - должен быть уникален, не должен повторяться. Можно в качестве ключа использовать цифры. 2. Если мы заменим в исходной таблице данные, то они изменятся и в новой. Поменяем Леньера на Дукхата - и ВПР не найдет Леньера в таблице и выдаст ошибку. Заменим "полировка лысины" на "замазывание синяков" - и ВПР выдаст "замазывание синяков" 3. Надо быть осторожным с добавлением и удалением строк в таблице с исходными данными. Если мы просто допишем строку снизу, то ВПР её не увидит - у нас-то зафиксированы строки с 1 по 4, и что там на 5й, 6й... функции неинтересно. Надо либо менять адрес таблицы в функции и снова протаскивать её (что не сложно), либо добавлять строку посередине с помощью функции "вставить строки"... и проверять, что будет. Exel должен сам изменить адрес в функции. 1 |
![]() |
|
МТА
спасибо большое за разбор))) Деленн | 1650 | пересадка волос Я валяюся))) классные примерыМоллари| 50 | стрижка Леньер| 17| полировка лысины Кош| 90 | протирка скафандра |