핵심 요약:
- 동일한 레코드를 포함하지만 정렬 순서가 다른 두 개의 엑셀 탭은 두 개의 개별적인 데이터 원본이 아니라, 하나의 원본에서 생성된 '보기(View)'여야 합니다.
- Excel 365의
SORTBY,FILTER,LET함수와 구조화된 표를 사용하면 하나의 마스터 테이블에서 정렬된 보기들을 동기화된 상태로 유지할 수 있습니다. - RowSpeak를 사용하면 프롬프트에 원하는 동기화 방식을 설명하는 것만으로 소스 테이블, 수식 기반의 보기, 검토 체크 항목이 포함된 워크북을 생성하고 다운로드할 수 있습니다.
두 개의 엑셀 시트가 동일한 정보를 보여주고 있더라도, 관리 방식이 잘못되면 유지보수가 불가능해질 수 있습니다.
한 탭은 이름순 정렬이 필요하고, 다른 탭은 상태, 위치, 우선순위, 마감일 또는 팀별 정렬이 필요할 수 있습니다. 이때 누군가 한 탭은 업데이트하고 다른 탭은 잊어버리거나, 엉뚱한 위치에 행을 삽입할 수 있습니다. 원본 데이터는 그대로인데 특정 보기에서만 값이 바뀌기도 합니다. 몇 주가 지나면 결국 어떤 시트가 정확한지 아무도 모르게 됩니다.
문제는 정렬 순서가 아니라, 두 개의 시트가 각각 '데이터 원본(Source of Truth)'처럼 작동하고 있다는 점입니다.
두 탭을 동기화된 상태로 유지해야 한다면, 가장 안전한 패턴은 **하나의 소스 테이블과 수식 기반의 여러 보기(View)**를 사용하는 것입니다.
데이터 원본(Source-of-Truth) 질문부터 시작하기
수식을 작성하기 전에 어떤 시트가 데이터를 소유할지 결정해야 합니다.
다음 질문을 던져보세요:
- 새로운 레코드는 어디에 입력해야 하는가?
- 어떤 필드를 수정할 수 있는가?
- 어떤 탭이 읽기 전용 보기인가?
- 누가 소스 데이터를 업데이트할 권한이 있는가?
- 레코드가 삭제되면 어떤 일이 발생하는가?
- 중복 레코드는 어떻게 처리해야 하는가?
두 시트 모두 수정 가능하다면 동기화는 위험해집니다. 엑셀은 동일한 데이터를 여러 방식으로 보여줄 수는 있지만, 충돌 해결 기능이 있는 데이터베이스는 아니기 때문입니다.
대부분의 운영 워크플로우에서 가장 좋은 답은 다음과 같습니다:
- 데이터 입력을 위한 하나의 마스터 테이블
- 다양한 정렬 요구사항을 충족하는 하나 이상의 읽기 전용 보기
- 변경 사항에 대한 검토 프로세스
이러한 구조는 데이터가 소리 없이 어긋나는 것을 방지합니다.
고유한 레코드 ID 사용하기
모든 행에 고유 식별자(ID)가 있을 때만 서로 다른 정렬 순서를 안전하게 사용할 수 있습니다.
이름만으로는 부족할 때가 많습니다. 동명이인이 있을 수 있고, 제품명이나 위치 이름, 상태 레이블은 언제든 바뀔 수 있기 때문입니다.
다음과 같은 레코드 ID를 사용하세요:
- 직원 번호
- 고객 ID
- 주문 번호
- 티켓 ID
- 자산 번호
- 케이스 ID
- 자동 생성된 행 ID
ID가 있으면 정렬 순서가 바뀌어도 각 보기에서 정확한 값을 불러올 수 있습니다.
워크북에 아직 ID가 없다면 보기를 만들기 전에 먼저 추가하세요. 수식을 짜는 것보다 덜 흥미로운 작업일 수 있지만, 워크북의 신뢰성을 유지하는 핵심 단계입니다.
아래는 간단한 직원 테이블 예시입니다. 이름, 부서, 연령 또는 상태별로 정렬할 수 있지만, 각 행의 정체성은 현재 행 위치가 아닌 고유 ID를 기반으로 해야 합니다.

시트 복제 대신 '보기(View)' 구축하기
마스터 테이블이 준비되었다면 이를 기반으로 보기를 만드세요.
엑셀 버전에 따라 다음과 같은 도구를 활용할 수 있습니다:
- FILTER 및 SORT 함수
- 구조화된 표 (Structured Tables)
- Power Query 출력 테이블
- 피벗 테이블
- 보호된 보기 탭
- 별도의 보고서 내보내기
원칙은 동일합니다. 보기는 소스에서 데이터를 읽어와야 하며, 별도의 수정 가능한 복사본이 되어서는 안 됩니다.
예를 들어, 한 보기는 진행 중인 케이스를 우선순위별로 정렬하고, 다른 보기는 동일한 케이스를 지역별로 정렬할 수 있습니다. 관리자는 원본 테이블을 건드리지 않고도 두 보기 중 하나를 선택해 사용할 수 있습니다.
단순히 시트를 동기화하는 것을 넘어 공유 가능한 요약본이 필요하다면, 탭을 추가하는 대신 Excel-to-dashboard 워크플로우를 활용하는 것이 더 유용할 수 있습니다.
핵심은 정렬된 탭을 사용자가 직접 수정하는 곳이 아니라, 자동으로 생성되는 '보기'로 만드는 것입니다. 누군가 다른 정렬 방식을 요구하면 테이블을 다시 복사하는 대신 보기 로직을 수정하세요.


Excel 365를 위한 수식 옵션
Excel 365나 동적 배열을 지원하는 버전을 사용 중이라면 수식으로 동기화된 보기를 만들 수 있습니다.
먼저, 마스터 데이터를 엑셀 표로 변환하세요:
- 소스 범위를 선택합니다.
Ctrl + T를 누릅니다.- [표 디자인] 탭에서 표 이름을
MasterData로 지정합니다. RecordID와 같은 고유 키 열이 있는지 확인합니다.
MasterData에 다음과 같은 열이 있다고 가정해 보겠습니다:
| RecordID | Name | Department | Status | Priority | Due Date | Owner |
|---|---|---|---|---|---|---|
| T-1001 | Site audit | Operations | Active | High | 2026-05-21 | Maya |
| T-1002 | Vendor review | Finance | Active | Medium | 2026-05-28 | Chris |
| T-1003 | Campaign QA | Marketing | Waiting | Low | 2026-06-02 | Lena |
이름순으로 정렬된 보기를 만들려면 새 시트의 A1 셀에 다음 수식을 입력하세요:
=SORTBY(MasterData, MasterData[Name], 1)
수식 설명:
MasterData: 전체 소스 테이블입니다.MasterData[Name]: 정렬 기준이 되는 열입니다.1: 오름차순 정렬을 의미합니다.
마감일순으로 정렬된 보기를 만들려면 다음을 사용하세요:
=SORTBY(MasterData, MasterData[Due Date], 1)
'Active' 상태인 레코드만 마감일순으로 정렬하여 보여주려면 다음과 같이 작성합니다:
=SORTBY(
FILTER(MasterData, MasterData[Status]="Active"),
FILTER(MasterData[Due Date], MasterData[Status]="Active"),
1
)
수식 설명:
FILTER(MasterData, MasterData[Status]="Active"): 활성 상태인 행만 반환합니다.- 두 번째
FILTER: 해당 활성 행들의 마감일만 반환합니다. SORTBY: 필터링된 행들을 필터링된 마감일 기준으로 정렬합니다.
우선순위 정렬의 경우 High, Medium, Low는 알파벳순으로 정렬하면 업무 우선순위와 맞지 않습니다. MasterData에 PriorityRank라는 보조 열을 추가한 뒤 다음 수식을 사용하세요:
=SORTBY(
FILTER(MasterData, MasterData[Status]="Active"),
FILTER(MasterData[PriorityRank], MasterData[Status]="Active"),
1,
FILTER(MasterData[Due Date], MasterData[Status]="Active"),
1
)
PriorityRank를 High는 1, Medium은 2, Low는 3으로 설정하면, 보기는 마스터 테이블에서 다시 계산되어 항상 동기화된 상태를 유지합니다.
기존 시트 점검을 위한 수식 옵션
이미 두 개의 탭이 있고 이들이 서로 일치하는지 확인해야 한다면, 고유 ID를 조회 키로 사용하세요.
예를 들어, Sorted_By_Name 시트에서 상태 값이 마스터 테이블과 일치하는지 비교할 수 있습니다:
=XLOOKUP([@RecordID], MasterData[RecordID], MasterData[Status], "Missing in master")=[@Status]
이 수식은 해당 행의 상태가 마스터 테이블과 일치하면 TRUE, 데이터가 어긋났다면 FALSE를 반환합니다.
마스터 테이블에서 최신 담당자 정보를 보기에 불러오려면 다음을 사용하세요:
=XLOOKUP([@RecordID], MasterData[RecordID], MasterData[Owner], "")
이 방법은 수동으로 복사된 탭이 이미 많은 오래된 워크북에서 유용합니다. 비교 열을 추가해 불일치 항목을 찾은 다음, 탭을 수식 기반의 보기로 재구축할 수 있습니다.
동기화 오류 체크 항목 추가하기
구조가 깔끔하더라도 기본적인 점검 항목을 추가하는 것이 좋습니다.
유용한 체크 항목:
- 소스 레코드 수 vs 보기 레코드 수
- 중복 ID 확인
- 누락된 ID 확인
- 보기에서 제외된 레코드 확인
- 필수 필드 공백 여부
- 최종 업데이트 날짜
- 소스 데이터와 보기의 합계 비교
이러한 점검은 수식 오류, 필터 실수, 의도치 않은 수정을 잡아내는 데 도움이 됩니다. 실시간 운영 프로세스를 지원하는 워크북이라면 이러한 체크 항목은 보기 그 자체만큼이나 중요합니다.
엑셀 수식의 경우 다음 사항도 확인하세요:
- 동적 배열 출력 범위를 무언가 가로막고 있어 발생하는
#SPILL!오류 - 구조화된 표 대신 고정 범위를 참조하는 정렬 수식
- 업무 순위가 아닌 알파벳순으로 정렬된 우선순위 값
- 설명 없이 비활성 행을 누락시킨 수식
- 사용자가 생성된 보기 셀에 직접 입력하여 수식 출력을 깨뜨리는 경우
- 조회 확인을 불가능하게 만드는 중복된
RecordID값
RowSpeak 활용 방법
워크북이 단순한 개인용 시트를 넘어 팀 단위의 명확한 워크플로우가 필요할 때 RowSpeak가 큰 도움이 됩니다.
워크북을 업로드하고 RowSpeak에 다음과 같이 요청할 수 있습니다:
- 동일한 레코드를 복제하고 있는 탭 식별
- 소스 테이블 및 보기 구조 제안
- 누락된 ID 및 중복 레코드 표시
- 시트 간 차이점 요약
- 수식 기반의 정렬된 보기가 포함된 다운로드 가능한 워크북 생성
- 불일치 행에 대한 검토 보고서 작성
- 수동 정렬 필요성을 줄여주는 대시보드 보기 제안
이는 단순히 "어떤 수식을 써야 하나요?"라는 질문을 넘어 "사람들이 신뢰할 수 있도록 이 스프레드시트 워크플로우를 어떻게 구조화해야 할까요?"라는 고민을 해결해 줍니다.
실용적인 Excel AI 워크플로우를 통해 워크북을 재구축하기 전 구조를 명확히 파악할 수 있습니다.
예를 들어, RowSpeak에 다음과 같이 물어볼 수 있습니다:
두 시트를 비교해서 동일한 레코드를 포함하고 있는지 알려줘. 직원 ID를 키로 사용하고, 누락되거나 중복된 ID를 표시해 줘. 그리고 어떤 탭을 소스 테이블로 쓰고 어떤 탭을 정렬된 보기로 만드는 게 좋을지 추천해 줘.
이러한 프롬프트는 단순히 정렬 수식을 묻는 것보다 훨씬 유용합니다. 동기화 문제가 이미 존재하는지까지 점검해 주기 때문입니다.
RowSpeak가 수식이 포함된 워크북을 반환하길 원한다면 명시적으로 요청하세요:
동일한 레코드가 서로 다른 정렬 순서로 들어있는 두 개의 시트가 포함된 워크북을 업로드했어.
다음을 포함하는 다운로드 가능한 엑셀 워크북을 만들어 줘:
1. RecordID를 고유 키로 사용하는 깔끔한 MasterData 테이블.
2. 이름(Name)순으로 정렬된 보기.
3. 상태(Status), 우선순위(PriorityRank), 마감일(Due Date)순으로 정렬된 보기.
4. 누락된 RecordID, 중복 ID, 필드 불일치를 표시하는 동기화 점검(Sync Check) 시트.
마스터 테이블이 변경될 때 보기 시트가 업데이트되도록 SORTBY, FILTER, LET, XLOOKUP 등의 수식을 적절히 사용해 줘.
사용자가 직접 수정하지 않도록 생성된 보기 탭을 보호하거나 명확하게 표시해 줘.
이런 지시가 없으면 RowSpeak는 깔끔하지만 정적인 워크북을 생성할 수 있습니다. 워크북 내에 실시간 수식이 필요하다면 프롬프트에 수식 요구 사항을 포함하세요.
두 시트를 동기화하지 말아야 할 때
때로는 동기화가 정답이 아닐 수도 있습니다.
두 팀이 동일한 레코드를 서로 독립적으로 수정해야 한다면, 엑셀은 적합한 시스템이 아닐 수 있습니다. 데이터베이스, CRM, 티켓팅 시스템, 재고 관리 도구 또는 거버넌스가 갖춰진 BI 레이어가 필요할 수 있습니다.
다음과 같은 경우에만 엑셀 보기를 사용하세요:
- 한 팀이 소스 데이터를 소유함
- 보기가 주로 읽기 전용임
- 로직이 검토 가능할 정도로 단순함
- 워크북이 관리 가능한 수준임
다음과 같은 경우에는 엑셀 이상의 도구를 고려하세요:
- 많은 사용자가 동시에 수정함
- 변경 사항에 승인이 필요함
- 감사 로그(Audit logs)가 필요함
- 역할별로 권한이 다름
- 데이터셋이 너무 크거나 민감함
RowSpeak는 워크북을 분석하고 보고서를 생성하는 데 도움을 줄 수 있지만, 거버넌스가 핵심 요구 사항인 운영 시스템을 완전히 대체하는 용도로 사용되어서는 안 됩니다.
실무 워크플로우
다음 순서를 따르세요:
마스터 테이블 선정
레코드가 입력되고 유지 관리될 장소를 결정합니다.레코드 ID 추가 또는 확인
모든 행에는 고유 식별자가 필요합니다.필요한 보기 정의
누가, 왜 각 보기를 사용하는지 명확히 합니다.마스터 테이블에서 보기 구축
SORTBY,FILTER와 같은 수식을 사용하거나 Power Query, 피벗 출력을 활용합니다.필요 시 보기 탭 보호
파생된 테이블이 실수로 수정되는 것을 방지합니다.동기화 점검 항목 추가
행 수, ID, 제외된 레코드를 비교합니다.요약이 필요한 경우 보고서 보기 생성
설명과 검토 노트가 포함된 결과물이 필요할 때는 AI 보고 워크플로우를 활용하세요.
피해야 할 흔한 실수
- 탭 간에 행을 수동으로 복사하지 마세요.
- 두 시트 모두 수정 가능한 소스가 되게 하지 마세요.
- 정렬 순서를 데이터의 정체성(Identity)으로 간주하지 마세요.
- 누락되거나 중복된 ID를 확인하지 않고 보기를 만들지 마세요.
- 기본 테이블이 안정화되기 전에 대시보드를 추가하지 마세요.
결론
정렬 순서가 다른 두 개의 엑셀 시트를 동기화하는 것은 엑셀의 잔기술보다는 데이터 설계의 문제입니다.
하나의 소스 테이블을 사용하세요. 각 레코드에 고유 ID를 부여하세요. 그 소스에서 정렬된 보기를 만드세요. 레코드가 소리 없이 사라지지 않도록 점검 항목을 추가하세요.
엑셀은 중소규모의 많은 워크플로우에서 이를 충분히 처리할 수 있습니다. RowSpeak는 워크북을 이해하고, 정리하고, 요약하거나, 팀이 검토하고 공유할 수 있는 보고서로 변환해야 할 때 그 진가를 발휘합니다.
시작하기: 데이터가 어긋나기 전에 워크북 점검하기
팀에서 동일한 레코드를 서로 다른 순서로 관리하는 두 개의 탭을 사용하고 있다면, 지금 바로 RowSpeak에 워크북을 업로드하고 레코드 ID별로 탭을 비교해 달라고 요청해 보세요. 누락된 행, 중복 ID, 충돌하는 값을 찾아내고 어떤 시트를 마스터로 삼아야 할지 제안받을 수 있습니다.
지금 RowSpeak를 사용해 보세요 불안정한 두 시트 체제를 팀이 신뢰할 수 있는 견고한 구조로 바꿀 수 있습니다.







