Excel 2010 데이터 이동

Excel 2010 데이터 이동

일부 데이터를 가져와야 하는 테이블이 있는데 이 작업을 수행하는 방법을 잘 모르겠습니다.

다음은 테이블의 예입니다.

|   A    +   B    +       C       +   D   +   E    +   F    |
|--------+--------+---------------+-------+--------+--------|
| FNAME  | LNAME  | FULLNAME      | GRADE | EFFORT | CODE   |
|--------+--------+---------------+-------+--------+--------|
| FNAME1 | LNAME1 | FNAME1 LNAME1 | A     |        | GRADE  |
|--------+--------+---------------+-------+--------+--------|
| FNAME1 | LNAME1 | FNAME1 LNAME1 | H     |        | EFFORT |
|--------+--------+---------------+-------+--------+--------|
| FNAME2 | LNAME2 | FNAME2 LNAME2 | C     |        | GRADE  |
|--------+--------+---------------+-------+--------+--------|

나에게 필요한 것은 노력 등급을 노력 열로 옮기되 다른 행으로 옮기는 것입니다. 아래 예.

|   A   +   B   +     C     +   D   +   E    +   F    |
|-------+-------+-----------+-------+--------+--------|
| FNAME | LNAME | FULLNAME  | GRADE | EFFORT | CODE   |
|-------+-------+-----------+-------+--------+--------|
| NAME1 | NAME1 | NAMENAME1 | A     |        | GRADE  | ←      To column E here         ←
|-------+-------+-----------+-------+--------+--------|                                 ↑
| NAME1 | NAME1 | NAMENAME1 | H     |        | EFFORT | → Move this Grade from column D ↑
|-------+-------+-----------+-------+--------+--------|

그래서 제가 원하는 예는...

|   A    +   B    +       C       +   D   +   E    +   F    |
|--------+--------+---------------+-------+--------+--------|
| FNAME  | LNAME  | FULLNAME      | GRADE | EFFORT | CODE   |
|--------+--------+---------------+-------+--------+--------|
| FNAME1 | LNAME1 | FNAME1 LNAME1 | A     | H      | GRADE  |
|--------+--------+---------------+-------+--------+--------|
| FNAME2 | LNAME2 | FNAME2 LNAME2 | C     |        | GRADE  |
|--------+--------+---------------+-------+--------+--------|

중요한 점은 모든 학생이 노력 점수를 갖고 있는 것은 아니며, 노력 점수가 없으면 해당 점수를 받을 수 없다는 것입니다. 또한 때로는 주석 등이 포함된 추가 행이 있으므로 데이터가 일정하지 않습니다.

답변1

새 시트에서 헤더( A1:F1)를 복사하고 도우미 열에 1을 입력합니다. 나는 당신이 Column 을 사용하고 있다고 가정하겠습니다  G. 즉, 셀  G1. 입력하다

=IF(INDEX(Sheet1!A:A, $G2)<>"", INDEX(Sheet1!A:A, $G2), "")

으로  A2, 그리고 오른쪽으로 드래그/채우기하여  F2. 그런 다음 E2으로 변경 

=IF(INDEX(Sheet1!F:F, $G2+1)="EFFORT", INDEX(Sheet1!D:D, $G2+1), "")

그리고 입력

=IF(INDEX(Sheet1!F:F, $G1+1)="GRADE", $G1+1, $G1+2)

안으로  G2. A2:G2필요한 만큼 선택 하고 드래그/채우세요.

G그런 다음 원하는 경우 Column 을 숨깁니다  .

열은  (주로) 데이터를 그리는 G행의 인덱스(새 시트)입니다 . Sheet1CODE가 인 행을 가리키지 않는 한 이전 행의 인덱스보다 하나 더 많습니다. GRADE이 경우 행이라고 가정 EFFORT하고 이전 행에 2를 추가합니다(즉, 행을 건너뛰기 위해 EFFORT). 열  A- D및 는  Column 으로 색인화되어 의  F동일한 열에서 복사됩니다 . 열(EFFORT)의 공식은  현재 학생이 두 개의 행을 가진 학생인지 확인하고(따라서 CODE가 있는 동일한 학생을 나타냄 ) 그렇다면  두 번째 행의 열에서 EFFORT 성적을 가져옵니다.Sheet1GE$G2+1EFFORTD

이러한 데이터의 경우:

+   A   +   B    +      C       +   D   +   E    +   F    +
+-------+--------+--------------+-------+--------+--------+
| FNAME | LNAME  |   FULLNAME   | GRADE | EFFORT |  CODE  |
+-------+--------+--------------+-------+--------+--------+
| John  | Smith  | John Smith   | A     |        | GRADE  |
| John  | Smith  | John Smith   | H     |        | EFFORT |
| Mary  | Jones  | Mary Jones   | B     |        | GRADE  |
| Isaac | Newton | Isaac Newton | A+    |        | GRADE  |
| Isaac | Newton | Isaac Newton | C     |        | EFFORT |
+-------+--------+--------------+-------+--------+--------+

나는 다음과 같은 결과를 얻었습니다.

스프레드시트

답변2

피벗 없이 처리할 수 있습니다.

귀하의 예를 바탕으로 다음 Effort열에 다음 내용을 입력하세요 Sheet2.

=INDEX(Sheet1!$D$2:$D$10, MATCH(1, (Sheet2!$C2 = Sheet1!$C$2:$C$10) * (Sheet1!$F$2:$F$10 = "EFFORT"), 0))

Ctrl+ Shift+를 눌러 Enter배열 수식을 삽입합니다.

설명

Sheet1!$D$2:$D$10EffortSheet1의 원본 테이블에 있는 열 입니다 .

(Sheet2!$C2 = Sheet1!$C$2:$C$10)일치하는 항목을 찾고 있습니다.FULLNAME

(Sheet1!$F$2:$F$10 = "EFFORT")CODE은(는) 일치 하는 "EFFORT"를 찾고 있습니다.

둘 다 부울 값을 반환 0하고 1. 두 조건이 모두 일치하면(FULLNAME 및 CODE가 일치하는 행을 찾았음) 함수 1 * 1에 1( )을 반환합니다 MATCH.

관련 정보