1

У меня есть таблица Excel с двумя вкладками - одна вкладка представляет собой список данных о продажах (например, дата, сумма, имя клиента, номер счета-фактуры), а на другой вкладке я хочу очень просто выставлять счета (на самом деле они не являются выдаваться).

Каждый счет составляет всего 11 строк (например, первые несколько строк - это название компании, адрес и т.д.). На сегодняшний день это =data!C6 , для номера счета его =data!H6 , на сумму его =data!G6 .

Когда я выделяю invoice (11 строк, 8 столбцов) и использую маленькое поле в правом нижнем углу, чтобы перетащить вниз, чтобы автоматически генерировать другие invoices , это работает, НО проблема в том, что Excel получает неправильные значения на вкладке данных.

Например, следующий invoice должен быть =data!C7 / =data!H7 / =data!G7 но вместо этого он получает данные =data!C17 / =data!H17 / =data!G17

Может ли кто-нибудь помочь мне, чтобы я мог получать данные по одной строке на вкладке data ?

1 ответ1

0

Если я правильно понимаю ваш вопрос, это:

Sheet1 = 1 data per line(row)
Sheet2 = 1 data per 11 lines(rows)  <-- desired output.

Что я предлагаю, вместо прямой ссылки из Sheet1 -> Sheet2, попробуйте использовать "метод сопоставления индексов Excel".

Мне понадобилось много времени, чтобы понять это, но это того стоит.

1) Подготовить данные:

  • Рядом с таблицей 11x8 на листе 2 введите порядковый номер (его можно "спрятать" для печати, нажав r-click> text color = white позже, а пока оставьте его как обычно)
  • для данных на листе 1 добавьте столбец "число выполненных работ" слева от ваших данных. скажем 1 для данных в строке 1, 2 для данных в строке 2 и так далее.
  • например, сакэ, я предполагаю на листе 1: column1 = running number, column2 = date,column3 = amount,column4 = customer name,column5 = invoice number .
  • Я предполагаю, что данные о клиентах начинаются со строки 3. Таким образом, данные 1-й строки будут A3=1,B3=date1,C3=amount1,D3=name1,E3= invoice1 . И 2-ой датой будет A4=2,B4=date2,C4=amount2,D4=name2,E4= invoice2 и так далее.
  • и на листе 2: A1: K8 - ваши предполагаемые данные / формат для счета-фактуры1, причем "1" (номер 1) было напечатано на L1. и A9: K16 - это счет-фактура2, "= L1+1" набирается в ячейке L9.

2) Загрузить данные листа1 на лист2

Используйте "метод индекса соответствия" на листе 2.

  • Поскольку A1:K8 является областью данных для invoice1. и мы хотим разместить данные на листе 2 следующим образом: H2=date1,E4=amount1,C3=name1,H1= invoice1
  • поэтому на листе 2 тип H2: =index(<array2>,match(L1,<array1>,0)) , на листе 2 тип E4: =index(<array3>,match(L1,<array2>,0)) на листе 2 тип C3: =index(<array4>,match(L1,<array2>,0)) , на листе 2 тип H1: =index(<array5>,match(L1,<array2>,0))
  • где: это sheet1,$A$3:$A$200 , это sheet1,$B$3:$B$200 , это sheet1,$C$3:$C$200 , это sheet1,$D$3:$D$200 , это sheet1,$E$3:$E$200 .

  • мы увидим, что ячейка H2 будет иметь дату1, ячейка E4 будет иметь сумму1, ячейка C3 будет иметь имя1, ячейка H1 будет иметь счет-фактуру1.

3) Расширить его до следующих рядов

  • на листе 2 выберите A1:K8 , перетаскивайте маленький прямоугольник в правом нижнем углу до K16. Обратите внимание, что мы исключаем L1 в этом выборе.
  • Теперь выберите A9:L16 , перетащите маленький прямоугольник в правом нижнем углу до K1600. Примечание: L9 (рабочий номер) теперь выбран и тоже перетаскивается.

Готово.

Мы обязательно увидим A1:K1600 - это счет. L1 is 1, L9 is 2, L25 is 3 . чтобы "спрятать" L столбец L в печати, просто нажмите r> (иконка) цвет текста = белый.

Надеюсь, это поможет. (:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .