Excel은 명확한 서식, 숨겨진 논리 레이어, 단추, 양식 및 동적 대화형 기능으로 구성되면 미니 앱 플랫폼으로 바뀔 수 있습니다. 버튼, 양식 컨트롤 및 숨겨진 로직을 결합하여 데이터 입력, 대시보드 또는 프로세스 추적을 위한 대화형 도구를 구축할 수 있습니다.
이 튜토리얼에서는 버튼, 양식 및 숨겨진 로직을 사용하여 Excel을 기본 앱으로 전환하는 방법을 보여줍니다.
1단계:앱 기능 계획
Excel을 앱으로 바꾸려면 원하는 것과 앱이 수행할 작업을 계획해야 합니다. 양식을 사용하여 주문을 받고 주문 데이터를 저장하는 앱을 만든다고 가정해 보겠습니다.
그렇게 하려면 다음 시트를 만드십시오:
- 홈: 큰 버튼('주문 추가', '주문 데이터', '대시보드')이 있는 깔끔한 랜딩 페이지.
- 양식: 주문 제출 버튼이 있는 사용자 입력(드롭다운, 날짜, 숫자 필드).
- 주문 데이터: 모든 기록을 저장하는 단일 Excel 테이블입니다(데이터베이스라고 생각하세요).
- 논리: 도우미 테이블, 명명된 범위, 확인 규칙 및 ID 카운터를 위한 숨겨진 시트입니다.
- 대시보드: 원하는 경우 작은 KPI 카드와 논리 시트에서 제공하는 차트를 사용하여 판매 데이터로부터 대시보드를 만들 수 있습니다.
2단계:주문 양식 시트 작성
- 주문 양식이라는 새 시트를 만듭니다. .
- A열에 다음 입력 라벨을 나열합니다.
- 주문 ID
- 날짜
- 카테고리
- 제품
- 단위
- 단가
- 총액

- B열에 입력할 빈 셀을 남겨두세요:
- 양식 형식을 적절하게 지정하세요.
- 열 너비를 조정합니다.
- 셀 테두리를 추가합니다.
3단계:양식 컨트롤 추가
양식을 동적이고 대화형으로 만들려면 드롭다운 목록을 사용할 수 있습니다. 로직 시트에 카테고리, 제품, 가격 등과 같은 모든 정보를 나열한 다음 양식 컨트롤에 사용할 명명된 범위를 만듭니다.
명명된 범위 생성:
- 제품 이름과 함께 카테고리를 나열합니다.
- 수식으로 이동 탭>> 이름 관리자 선택>> 새로 만들기를 선택하세요. .
카테고리:
- 이름: 카테고리.
- 참조:

제품:
- 카테고리와 제품을 선택하세요.
- 수식으로 이동 탭>> 선택 항목에서 만들기를 선택합니다. .
- 맨 위 행을 선택합니다. .
- 확인을 클릭하세요. .

단가_가격 :
- 제품명과 가격을 선택하세요.
- 수식으로 이동 탭>> 선택 항목에서 만들기를 선택합니다. .
- 왼쪽 열을 선택합니다. .
- 확인을 클릭하세요. .

드롭다운 목록 만들기:
카테고리:
- B4 셀을 선택하세요.
- 데이터 로 이동 탭>> 데이터 유효성 검사를 선택합니다. .
- 허용 아래>> 목록을 선택하세요. .
- 출처: 명명된 범위를 삽입하세요.
- 확인을 클릭하세요. .

제품:
- B5 셀을 선택하고 종속 드롭다운 목록을 만듭니다.
- 데이터 로 이동 탭>> 데이터 유효성 검사를 선택합니다. .
- 허용 아래>> 목록을 선택하세요. .
- 출처: 다음 수식을 삽입하세요.
- 확인을 클릭하세요. .

- 카테고리를 기준으로 제품을 선택할 수 있습니다.
단위:
- B6 셀을 선택하세요.
- 데이터 로 이동 탭>> 데이터 유효성 검사를 선택합니다. .
- 허용 아래 >> 목록을 선택하세요. .
- 출처: 최대 10개까지 목록을 삽입하세요.
- 확인을 클릭하세요. .

단가:
- B7 셀을 선택하세요.
- 데이터 로 이동 탭>> 데이터 유효성 검사를 선택합니다. .
- 허용 아래 >> 목록을 선택하세요. .
- 출처: 다음 수식을 삽입하세요.
- 확인을 클릭하세요. .
=INDIRECT(SUBSTITUTE(B5, " ", "_"))

- 종속 드롭다운 목록입니다.
- 제품에 따라 가격을 선택할 수 있습니다.
제출 버튼 추가:
- 개발자로 이동 탭>> 삽입 선택>> 버튼을 선택하세요. 양식 컨트롤에서 .
- 양식 아래에 버튼을 그립니다.
- 이름을 '주문 제출'로 지정하세요. .

- 지금은 그대로 두세요. 5단계에서 매크로를 할당하겠습니다.
4단계. 주문 데이터베이스 및 대시보드 시트 생성
- OrderData라는 새 시트를 추가합니다.
- 1행에 다음 헤더를 추가합니다.
- 주문_ID
- 날짜
- 카테고리
- 제품
- 단가_가격
- 단위
- 총액_금액

- 나중에 백엔드를 사용자로부터 보호하기 위해 이 시트를 숨길 예정입니다.
5단계:VBA 논리 추가
이제 VBA 코드를 사용하여 주문 데이터 시트에 양식 데이터를 제출하겠습니다. 이 VBA 코드는 양식 데이터를 데이터베이스에 복사하고 다음 항목에 대한 양식을 지웁니다.
- SubmitOrder 를 마우스 오른쪽 버튼으로 클릭하세요. 버튼>> 매크로 할당 >> 새로 만들기를 클릭하세요. .

- 다음 코드를 삽입하세요.
Sub SubmitOrder()
Dim wsForm As Worksheet, wsDB As Worksheet
Dim nextRow As Long
Dim lastOrderID As String
Dim newOrderNum As Long
Set wsForm = ThisWorkbook.Sheets("Order Form")
Set wsDB = ThisWorkbook.Sheets("OrderData")
' Find the next empty row in the database
nextRow = wsDB.Cells(wsDB.Rows.Count, "A").End(xlUp).Row + 1
' Get last order ID (skip header)
If nextRow = 2 Then
' No orders yet ? start from 1001
newOrderNum = 1001
Else
lastOrderID = wsDB.Cells(nextRow - 1, 1).Value ' e.g., ORD-1005
newOrderNum = CLng(Replace(lastOrderID, "ORD-", "")) + 1
End If
' Save the current order to database
wsDB.Cells(nextRow, 1).Value = "ORD-" & newOrderNum
wsDB.Cells(nextRow, 2).Value = wsForm.Range("B3").Value ' Date
wsDB.Cells(nextRow, 3).Value = wsForm.Range("B4").Value ' Category
wsDB.Cells(nextRow, 4).Value = wsForm.Range("B5").Value ' Product
wsDB.Cells(nextRow, 5).Value = wsForm.Range("B6").Value ' Units
wsDB.Cells(nextRow, 6).Value = wsForm.Range("B7").Value ' Unit Price
wsDB.Cells(nextRow, 7).Value = wsForm.Range("B8").Value ' Revenue
' === Safe clear: only values ===
Application.EnableEvents = False
wsForm.Range("B3").Value = vbNullString
wsForm.Range("B4").Value = vbNullString ' Category (keeps DV)
wsForm.Range("B5").Value = vbNullString ' Product (keeps DV)
wsForm.Range("B6").Value = vbNullString ' Units (keeps DV)
wsForm.Range("B7").Value = vbNullString ' Unit Price (keeps DV)
wsForm.Range("B8").Formula = "=B6*B7" ' Restore Revenue formula
Application.EnableEvents = True
' Generate the next Order ID for the next entry
wsForm.Range("B2").Value = "ORD-" & (newOrderNum + 1)
MsgBox "Order submitted successfully!", vbInformation
End Sub

설명:
- 주문 ID는 제출할 때마다 자동으로 증가합니다.
- 데이터베이스가 비어 있는 경우 첫 번째 제출은 ORD-1001에서 시작됩니다.
- 클릭할 때마다:
- 매크로는 마지막으로 저장된 주문 번호를 확인합니다.
- 1씩 증가합니다.
- 다음으로 사용 가능한 ID로 양식의 B2를 채웁니다.
- 수식이나 데이터 유효성 검사가 아닌 값만 지우므로 다음 항목이 새로 시작됩니다.
6단계:대시보드 시트 만들기
이제 주문 데이터를 기반으로 대시보드를 만들 수 있습니다.
- KPI 생성: 총 주문, 매출, 판매 수량, 평균 주문 금액 등을 계산합니다.
- 차트 삽입: 동적 차트를 만들거나 피벗 차트를 삽입하세요.

7단계:시트 형식을 지정하여 APP 모양 만들기
홈페이지 만들기:
- 삽입으로 이동 탭>> 일러스트레이션 선택>> 도형 선택 .
- 버튼 선택 .
- 버튼을 셀로 드래그하세요.

- 도형을 마우스 오른쪽 버튼으로 클릭>> 링크 선택 .

- 이 문서에 배치를 선택합니다.>> 시트 셀을 선택합니다(탐색 버튼, 코드 없음).
- 주문 양식을 선택하세요. .
- 확인을 클릭하세요. .

- 유사한 단계에 따라 대시보드 및 OrderData 시트에 대한 하이퍼링크를 삽입하세요.
- 나중에 보안 목적으로 주문 데이터를 잠급니다.

로직 숨기기:
Excel을 앱처럼 작동하게 하려면:
- 시트를 선택하세요.
- 마우스 오른쪽 버튼 클릭>> 숨기기 선택 .

- 입력 셀만 변경할 수 있도록 주문 양식 시트를 보호하세요.
- 보기로 이동 탭:
- 수식 입력줄을 선택 취소합니다. .
- 격자선을 선택 취소합니다. .
8단계:주문 앱 테스트
- 예제 주문을 입력하세요:
- 주문 ID: 주문 ID가 자동으로 입력됩니다.
- 날짜: 2025년 3월 1일 날짜를 입력하세요
- 카테고리: 드롭다운 목록에서 카테고리를 선택하세요.
- 제품: 종속 드롭다운에서 마우스를 선택하세요.
- 단위: 목록에서 단위 번호를 선택하십시오.
- 단가: 종속 드롭다운에서 가격을 선택하세요.
- 수익: 자동 계산됩니다.
- 주문 제출을 클릭하세요. .

- 다음 주문 ID가 자동으로 나타납니다.
- 다음 주문을 위해 양식이 지워집니다.
- 양식 제출이 성공하면 메시지 상자가 나타납니다.
- 확인을 클릭하세요. .

- OrderData 시트를 확인하세요. 항목이 자동으로 표시됩니다.

결론
위의 단계에 따라 Excel 시트를 앱으로 전환할 수 있습니다. 버튼, 양식 및 숨겨진 로직을 사용하여 동적 앱을 만들 수 있습니다. 이러한 앱과 유사한 도구는 전문 소프트웨어에 투자하지 않고도 데이터 입력을 간소화하고 사용자 오류를 줄이는 강력한 방법입니다. 깔끔한 프런트 엔드 양식, 데이터 유효성 검사 드롭다운, 숨겨진 데이터베이스 시트 및 VBA 자동화를 결합하여 완전한 기능을 갖춘 주문 관리 시스템을 만들었습니다. 대시보드, 요약 보고서 또는 고급 분석을 위한 파워 쿼리 통합을 통해 이 설정을 확장할 수 있습니다.
솔루션이 포함된 무료 고급 Excel 연습을 받아보세요!