Как создать столбец, в котором все значения из A связаны с B?

355
Tony

У меня даже была проблема сформулировать вопрос. Я дам вам пример, и тогда я думаю, что это будет более понятно. Допустим, у нас есть следующие данные в Excel:

Таблица данных

И затем я хочу связать каждое отдельное значение из столбца «Имя» со столбцом «Город», имея в конце:

Результат

Как это можно получить с помощью Excel?

Я знаю, что это очень просто сделать с помощью скрипта, если вы программист, но я нет, и мне нужно решение для этого.

В основном я ищу эквивалент перекрестного соединения в Excel

-1
Google, как использовать VLOOKUP, это как первое, чему нужно научиться, и одна из наиболее часто используемых функций в Excel. PeterH 6 лет назад 0
@PeterH Я не думаю, что Тони хочет VLOOKUP здесь. Я думаю, что первый пример - это то, что у него есть, а второй - то, кем он хочет, чтобы он стал. VLOOKUP не будет работать в этом случае. LPChip 6 лет назад 0
@LPChip да ты прав PeterH 6 лет назад 0
Привет, Тони, добро пожаловать в SuperUser. Для решения, которое вы ищете, потребуется VBA (или макрос). К сожалению, мы не являемся «Пожалуйста, напишите мне скрипт типа сервиса». Вы можете вручную записывать действия, чтобы получить код VBA и создать что-то подобное. Если вы предоставите скрипт, мы можем помочь вам отладить, почему скрипт работает неправильно. Кроме того, рассмотрите возможность сделать это вручную. LPChip 6 лет назад 0
https://www.contextures.com/excelmsquerycartesian.html PeterH 6 лет назад 0
Это честно зависит от того, как долго ваш список имен. Если у вас довольно небольшое количество имен, скажем, 10-15 вершин, вы можете просто скопировать и вставить повторяющийся блок городов, а затем добавить их в имена. Этот подход, безусловно, не является хорошим выбором, если ваш список значительно больше. , но если у вас есть только несколько имен, это может быть проще, чем пытаться следовать логике сложной формулы. user2800 6 лет назад 0
LPChip Спасибо за комментарий. Я знаю, что это не «напиши мне сценарий», и я не хочу этого. Я хотел бы быть самодостаточным. Дело в том, что я столкнулся с этой проблемой на прошлой неделе на работе, но с 500 записями для столбца A и 100 для столбца B, поэтому выполнение этого вручную заняло бы очень много времени. Мой напарник знает немного программирования и написал простой скрипт. Через 10 минут это было сделано, но я не хочу зависеть от него каждый раз, поэтому я надеялся найти формулу, чтобы сделать это с Excel. Я знаю о VLOOKUP, но это не поможет мне в этой ситуации. Tony 6 лет назад 0
@ Тони, вы можете использовать поиск какой-либо формы, чтобы заполнить пробелы, но информация должна где-то существовать. В вашем примере у вас есть имена без назначенного города. В Excel нет ничего, что позволило бы ему угадывать такую ​​информацию. fixer1234 6 лет назад 0

1 ответ на вопрос

0
PeterH

Предполагая, что ваш столбец NAME начинается с A1, а столбец City начинается с B1, вы можете использовать следующее:

В С2 используйте:

=INDEX(A:A,ROUND((ROW())/4,0)+1) 

А в D2 используйте:

=INDEX($B:$B,IF(RIGHT(ROW()/4,2)=".5",1,IF(RIGHT(ROW()/4,3)=".75",2,IF(RIGHT(ROW()/4,3)=".25",4,3)))+1,1) 

Затем перетащите их вниз так далеко, как требуется.

Похожие вопросы