Excel에서 워드 게임을 만드는 것은 더 이상 복잡한 기술 개념이 아니라, 논리 함수, 서식 도구, 그리고 스프레드시트의 역동성을 활용하는 간단한 프로젝트입니다. Excel은 워드 프로세싱, 입력 제어, 조건부 규칙을 결합하여 온라인 게임과 유사한 인터랙티브 경험을 제공합니다. 사용자는 게임판을 만들고, 답을 정의하고, 승패 메시지를 추가하고, 스마트 수식을 사용하여 각 움직임을 자동화할 수 있습니다. 이러한 접근 방식은 Excel을 기존 스프레드시트보다 더욱 강력한 기능으로 만들어, 새로운 방식으로 창의력을 발휘하고 실험하려는 학습자와 사용자에게 어필하는 인터랙티브 텍스트 게임을 제작할 수 있는 소형 플랫폼으로 탈바꿈시킵니다.

저는 회계라는 평범한 영역 외에도 다양한 용도로 Excel을 사용하는 것을 좋아합니다. 완벽하게 기능하고 재사용 가능하며 공유 가능한 Wordle 복제본을 만드는 것도 그중 하나입니다. 게다가 핵심 Excel 도구를 마스터하는 재미있고 독특한 방법이기도 합니다.
이 방법은 VBA 매크로를 사용합니다.
이 가이드의 핵심 단계에서는 VBA 매크로를 사용하여 추측 순서를 처리합니다. 워들 복잡하고 논리적인 등록 절차 덕분에 플레이어는 핵심 Excel 설정을 변경할 필요가 없어 더욱 안정적인 경험을 할 수 있습니다. VBA 코드 작성법을 모르더라도 걱정하지 마세요. 제 코드를 복사해서 붙여넣기만 하면 됩니다!
플레이어가 활성화된 매크로가 포함된 파일을 열면 Excel 화면 상단에 보안 경고 표시줄이 나타납니다. 이 시점에서 게임이 제대로 작동하려면 "콘텐츠 사용"을 클릭해야 합니다. 그렇지 않으면 게임판이 고정되고 추측이 기록되지 않습니다.
귀하와 게임 사본을 받을 플레이어는 Microsoft Excel 데스크톱 버전을 사용해야 합니다.
1단계: 매크로 활성화 파일 저장
이 단계에서는 VBA를 위한 통합 문서를 준비합니다. 새 Excel 통합 문서를 열고 다음을 클릭합니다. "파일" > "다른 이름으로 저장" > "찾아보기".

파일의 위치를 선택하고 "파일 형식" 필드에서 다음을 지정합니다. "매크로가 활성화된 Excel 통합 문서"그런 다음 파일 이름을 지정하고 "저장".

2단계: 사전과 칠판 준비
다음으로, 올바른 단어 사전을 만들고 Wordle 게임판을 만들어야 합니다.
새 워크시트("+")를 추가하고 새 워크시트 탭을 두 번 클릭하여 이름을 WordList로 변경합니다. Enter 키를 눌러 확인합니다.

찾다 5글자 단어 목록모든 단어를 복사한 다음 단어 목록 시트의 A1 셀에 붙여넣습니다(Ctrl+Shift+V 사용). 그런 다음 중복된 단어를 찾아 A열을 선택하고 "데이터" 탭에서 "중복 단어 제거"를 클릭하여 완전히 삭제합니다.

다음으로, 게임 워크시트(Sheet1)로 돌아가서 모든 셀을 선택(Ctrl+A)하고 열 머리글 사이의 구분선을 클릭하고 끌어서 셀 너비를 65픽셀로 변경합니다.

모든 셀을 정사각형으로 만들려면 행에 대해 이 과정을 반복합니다.
이제 A1 셀에 모두 대문자를 사용하여 5자리 비밀번호를 입력하세요. 그런 다음 B3부터 F8 셀까지 선택하고 글꼴 크기를 36포인트로 변경한 후, 홈 탭을 사용하여 텍스트를 가로 및 세로로 정렬하세요. 마지막으로 바깥쪽 테두리를 추가하세요.

Ctrl+S를 눌러 파일을 저장합니다.
3단계: 게임 메커니즘 만들기
매크로는 게임의 핵심으로, 모든 기록 프로세스, 색상, 문자 논리를 자동으로 제어합니다.
탭을 마우스 오른쪽 버튼으로 클릭하세요 논문 1 그런 다음 "코드 표시"

VBA 편집기 창에서 Microsoft Excel 개체 아래의 "Sheet1(Sheet1)"을 두 번 클릭한 다음 아래 코드를 복사하여 오른쪽의 빈 모듈 영역에 붙여넣습니다.

개인 하위 Worksheet_Change (범위로 ByVal 대상)
Dim GuessRow는 오랫동안
Dim SecretWord를 문자열로
'변경된 셀이 F-열(추측의 다섯 번째 문자)인 경우에만 실행됩니다.
Intersect(Target, Me.Range(“F3:F8”))가 아무것도 아닌 경우
Application.ScreenUpdating = False
Application.EnableEvents = False
'중요: 매크로가 색상을 변경하고 상태를 잠금할 수 있도록 시트 보호를 해제하세요.
If Me.ProtectContents Then Me.Unprotect “YOUR_PASSWORD”
GuessRow = 대상.행
' 1. 비밀 단어를 얻고 추측하세요
비밀 단어 = UCase(Me.Range(“A1”).Value)
'5개의 셀을 하나의 문자열로 연결합니다.
Dim InputWord를 문자열로
Dim j As Long
j = 2 ~ 6 '의 경우 B열에서 F열까지 반복합니다.
InputWord = InputWord & Me.Cells(GuessRow, j).Value
다음 j
Dim GuessWord를 문자열로
추측단어 = UCase(입력단어)
' 2. 유효한 단어인지 확인(COUNTIF 트릭 사용)
Dim WordCount As Long
WordCount = Application.WorksheetFunction.CountIf( _
Sheets(“WordList”).Range(“A:A”), GuessWord)
WordCount = 0이면
'잘못된 단어 처리(단어 목록에 없음)
MsgBox "단어 목록에 없습니다! 다시 시도해 주세요.", vbExclamation
Me.Range(“B” & GuessRow & “:F” & GuessRow).ClearContents
다른
'새로운 확인: 중복 항목 확인
희미하게 r만큼
Dim DuplicateFound As Boolean
중복 발견 = 거짓
' 이전 모든 추측 행(행 3부터 현재 행 - 1까지)을 반복합니다.
r = 3의 경우 GuessRow – 1
' 비교를 위해 이전 행의 단어를 연결합니다.
Dim PreviousWord를 문자열로
Dim k As Long
k = 2 ~ 6' 열 B ~ F의 경우
이전 단어 = 이전 단어 & Me.Cells(r, k).Value
다음 k
' 현재 대문자 추측(GuessWord)을 이전 추측과 비교합니다.
GuessWord = UCase(PreviousWord)이면
중복 발견 = 참
종료
END IF
PreviousWord = “”’ 다음 루프 반복을 위해 재설정
다음 r
중복이 발견되면
MsgBox "이미 그 단어를 맞히셨습니다! 다시 시도해 주세요.", vbExclamation
Me.Range(“B” & GuessRow & “:F” & GuessRow).ClearContents
'중복이 지워진 후 설정을 복원하고 하위를 종료합니다.
Application.EnableEvents = True
Application.ScreenUpdating = True
Me.Protect "당신의 비밀번호"
서브 종료
END IF
' 3. Core Wordle 점수 로직(셀 색상을 직접 설정)
오랫동안 어둡게
희미한 문자를 문자열로
Dim ClaimedLettersAs 문자열
ClaimedLetters = SecretWord ' 사용 가능한 모든 문자로 시작
' 패스 1: GREEN(올바른 위치) 확인
i = 1 ~ 5' 열 2(B) ~ 6(F)
' 수정: 점수 비교를 위해 셀 내용을 대문자로 변환
문자 = UCase(Me.Cells(GuessRow, i + 1).Value)
Mid(SecretWord, i, 1) = Letter이면
Me.Cells(GuessRow, i + 1).Interior.Color = RGB(106, 170, 100) ' 녹색
Mid(ClaimedLetters, i, 1) = "#" ' 플레이스홀더를 사용하여 문자를 청구합니다.
END IF
다음 i
' 패스 2: 노란색/회색 확인
내가 = 1하려면 5하려면
' 수정: 점수 비교를 위해 셀 내용을 대문자로 변환
문자 = UCase(Me.Cells(GuessRow, i + 1).Value)
'이미 녹색으로 표시되지 않은 경우에만 점수를 매기세요.
Me.Cells(GuessRow, i + 1).Interior.Color <> RGB(106, 170, 100)이면
'나머지 (녹색이 아닌) 사용 가능한 문자를 검색합니다.
InStr(1, ClaimedLetters, Letter) > 0이면
Me.Cells(GuessRow, i + 1).Interior.Color = RGB(201, 180, 88) ' 노란색
' 이 노란색 문자 인스턴스를 청구합니다.
Mid(청구된 편지, InStr(1, 청구된 편지, 편지), 1) = "#"
다른
Me.Cells(GuessRow, i + 1).Interior.Color = RGB(120, 124, 126) ' 회색
END IF
END IF
다음 i
' 4. 승패 확인 (승패 확인은 색상을 통해 이루어집니다)
Dim isWin As Boolean
isWin = 참
내가 = 2하려면 6하려면
Me.Cells(GuessRow, i).Interior.Color <> RGB(106, 170, 100)이면
isWin = 거짓
종료
END IF
다음 i
만약 isWin이라면
Me.Range(“B2”).Value = “당신이 이겼습니다!”
' FIX: 마지막 행(행 8)에 손실 조건이 추가되었습니다.
ElseIf GuessRow = 8이면
Me.Range(“B2”).Value = “다음에 더 잘하세요. 단어는” & SecretWord
END IF
' 5. 순차적 재생을 위해 현재 행을 잠그고 다음 행을 잠금 해제합니다.
Me.Range(“B” & GuessRow & “:F” & GuessRow).Locked = True ' 방금 완료된 행을 잠급니다.
'게임에서 이기지 못하고 더 많은 행이 있는 경우에만 다음 행을 잠금 해제합니다.
만약 isWin과 GuessRow < 8이 아니라면
Me.Range(“B” & (GuessRow + 1) & “:F” & (GuessRow + 1)).Locked = False ' 다음 행 잠금 해제
END IF
END IF
Me.Protect “YOUR_PASSWORD” ' 설정한 비밀번호로 시트를 다시 보호합니다.
Application.EnableEvents = True
Application.ScreenUpdating = True
END IF
'시트가 이미 보호된 경우 위의 IF 블록을 건너뛴 경우에도 다시 보호됩니다.
내가 아니면.ProtectContents 그럼 나.Protect “YOUR_PASSWORD”
최종 하위
이제 VBA 창이 열린 상태에서 Ctrl+H를 눌러 바꾸기 창을 엽니다. 찾을 내용 필드에 YOUR_PASSWORD를 입력하고, 바꿀 내용 필드에 나중에 워크시트 보안에 사용할 비밀번호를 입력합니다. 이 비밀번호를 적어 두세요! 그런 다음 모두 바꾸기를 클릭하면 비밀번호가 네 번 바뀐 것을 확인할 수 있습니다.

교체 창을 닫습니다.
첫 번째 코드 줄에는 셀이 수정되면 자동으로 활성화되는 이벤트 처리기가 포함되어 있으므로, 스프레드시트 설정이 완료될 때까지 일시적으로 비활성화해야 합니다. 이렇게 하려면 VBA 창이 열려 있는 상태에서 리본 메뉴에서 "보기"를 클릭한 다음 "직접 실행 창"을 선택하세요.

다음으로, 다음 내용을 복사하여 인스턴트 창에 붙여넣고 Enter를 누릅니다.
Application.EnableEvents = False

