아빠노트

엑셀 수식이 계산되지 않을 때 — 텍스트 서식·앞따옴표·수동 계산을 하나씩 재현했습니다

실측 2026-09-18처음 쓴 날 2026-09-18 · English version

수식이 안 먹는 경우 네 가지를 각각 만들어 놓고 증상과 복구 후 값을 재 봤습니다. 화면에 =A1+A2 라는 글자가 그대로 보인 두 경우는 그 칸이 수식으로 인정되지 않았고(텍스트 서식, 앞 작은따옴표), 숫자는 보이는데 값이 안 바뀐 경우는 계산 옵션이 수동이었습니다.

한 줄로

수식이 안 먹는 경우 네 가지를 각각 만들어 놓고 증상과 복구 후 값을 재 봤습니다. 화면에 =A1+A2 라는 글자가 그대로 보인 두 경우는 그 칸이 수식으로 인정되지 않았고(텍스트 서식, 앞 작은따옴표), 숫자는 보이는데 값이 안 바뀐 경우는 계산 옵션이 수동이었습니다.

증상

  • 칸에 =A1+A2 라고 적힌 글자가 그대로 보이고 결과가 안 나옵니다.
  • 참조하는 칸의 숫자를 바꿨는데 합계가 그대로입니다.
  • 어떤 칸은 되고 어떤 칸은 안 됩니다.

실측 환경

항목값
OSMicrosoft Windows 11 Home 10.0.26200 (build 26200)
셸PowerShell 7.6.6
엑셀Excel 16.0, build 20326
시험 파일빈 통합 문서를 새로 만들어 직접 넣은 값 (A1=10, A2=20)

각 경우마다 엑셀이 그 칸을 어떻게 보고 있는지 여섯 가지를 찍어 확인했습니다. 화면에 보이는 글자(.Text), 값(.Value2), 수식(.Formula), 수식으로 인정되는가(.HasFormula), 셀 서식(.NumberFormat), 앞에 붙은 글자(.PrefixCharacter)입니다.

네 가지를 하나씩 만들어 봤습니다

아래는 돌린 스크립트에서 설정 부분만 뽑은 것입니다. 실제로는 경우 3에서 수동으로 바꾼 뒤 A1을 100으로 고쳐 값이 안 따라오는 것을 확인했고, 경우 4는 계산 옵션을 자동으로 되돌리고 A1을 10으로 돌려놓은 상태에서 돌렸습니다.

$xl = New-Object -ComObject Excel.Application
$wb = $xl.Workbooks.Add()
$ws = $wb.Worksheets.Item(1)
$ws.Range("A1").Value2 = 10
$ws.Range("A2").Value2 = 20

# 경우1 — 셀 서식을 '텍스트'로 만들어 두고 수식을 넣는다
$ws.Range("B1").NumberFormat = "@"
$ws.Range("B1").Formula = "=A1+A2"

# 경우2 — 앞에 작은따옴표를 붙여서 넣는다
$ws.Range("B2").Value2 = "'=A1+A2"

# 경우3 — 계산 옵션을 수동으로 바꾼다 (-4135 = xlCalculationManual)
$ws.Range("B3").Formula = "=A1+A2"
$xl.Calculation = -4135

# 경우4 — 자기 칸을 가리키는 수식
$ws.Range("B4").Formula = "=B4+1"

결과 — 증상과 복구

경우화면에 보이는 것.HasFormula알아보는 표시복구 방법복구 후 값
1 · 셀 서식이 텍스트=A1+A2False.NumberFormat 이 @서식을 일반으로 바꾼 뒤 수식을 다시 입력30
2 · 앞에 작은따옴표=A1+A2False.PrefixCharacter 가 '수식을 다시 입력30
3 · 계산 옵션 수동30 (옛 값)True상태 표시줄에 「계산」한 번 계산시키거나 계산 옵션을 자동으로120
4 · 순환 참조0True.CircularReference 가 B4자기 칸을 가리키지 않게 고침20

경우 1과 2는 화면에서 똑같이 보입니다. 둘 다 .Text 가 =A1+A2 이고 .HasFormula 가 False 입니다. 구분은 셀 서식과 앞글자로 합니다.

경우1·경우2 는 수식이 글자로 왼쪽에 붙어 보이고, 정상인 칸만 30 이 오른쪽에 붙는다
경우1·경우2 는 수식이 글자로 왼쪽에 붙어 보이고, 정상인 칸만 30 이 오른쪽에 붙는다

글자로 들어간 칸은 왼쪽 맞춤, 계산된 숫자는 오른쪽 맞춤 으로 붙습니다. 맞춤을 손대지 않은 표라면 이것이 가장 빨리 눈에 띄는 표시입니다.

경우 1 — 서식만 되돌려서는 안 됩니다

셀 서식을 텍스트에서 일반으로 되돌린 직후에 다시 찍어 보면 이렇습니다.

[서식만 일반으로 바꾼 뒤] B1
    화면에 보이는 것(.Text)  = '=A1+A2'
    값(.Value2)              = '=A1+A2'
    수식인가(.HasFormula)    = False
    셀 서식(.NumberFormat)   = 'G/표준'

서식은 일반으로 바뀌었는데 여전히 글자입니다. 이미 글자로 들어간 값은 서식을 바꾼다고 수식으로 돌아오지 않습니다. 같은 수식을 한 번 더 넣어야 합니다.

[수식을 다시 넣은 뒤] B1
    화면에 보이는 것(.Text)  = '30'
    수식인가(.HasFormula)    = True

2026-09-18 원래 시험에서 확인한 복구는 COM으로 .Formula 를 한 번 더 설정하는 것이었습니다. 화면에서 서식을 바꾸고 다시 입력하는 순서는 아래 「화면에서 따라 하기」에 공식 도움말과 대조해 보강했습니다. 그 화면 절차를 직접 실행한 결과는 아닙니다.

경우 2 — 작은따옴표는 화면에 안 보입니다

'=A1+A2 를 넣은 칸은 서식이 G/표준 으로 멀쩡한데도 계산되지 않았습니다. 앞에 붙은 작은따옴표는 .Text 에 들어 있지 않았고 .PrefixCharacter 에만 ' 로 남았습니다. 화면에 보이는 글자는 경우 1과 똑같았다는 뜻입니다. 이 칸도 수식을 다시 넣으니 30이 나왔고 .PrefixCharacter 가 비었습니다.

경우 3 — 숫자는 보이는데 안 바뀝니다

=A1+A2 가 30을 내고 있는 상태에서 계산 옵션을 수동으로 바꾼 뒤 A1을 10에서 100으로 고쳤습니다. 120이 되어야 하는데 30 그대로였습니다.

계산 옵션이 수동이면 B1 을 100 으로 바꿔도 아래 합계는 30 그대로다. 상태 표시줄에 「계산」이 떠 있다
계산 옵션이 수동이면 B1 을 100 으로 바꿔도 아래 합계는 30 그대로다. 상태 표시줄에 「계산」이 떠 있다

왼쪽 아래 상태 표시줄을 보시면 「준비」 옆에 「계산」 이라는 글자가 하나 더 떠 있습니다. 계산할 것이 밀려 있다는 표시입니다. 복구 후 캡처에서는 이 글자가 사라졌습니다.

복구는 두 가지입니다.

  1. 한 번만 계산 — COM으로는 $xl.Calculate(). 부르고 나니 120으로 바뀌었습니다. 화면에서 여기에 해당하는 키는 F9 인데, 키를 눌러서 확인하지는 못했습니다.
  2. 계속 자동으로 — COM으로는 $xl.Calculation = -4105. A1을 7로 바꾼 뒤 이 값을 자동으로 되돌리자 27이 됐습니다.
복구한 뒤 — 세 칸 모두 120 이 되고 상태 표시줄의 「계산」이 사라졌다
복구한 뒤 — 세 칸 모두 120 이 되고 상태 표시줄의 「계산」이 사라졌다

남이 보낸 파일 하나가 다른 파일까지 멈춥니다

계산 옵션은 파일마다 따로 걸리지 않습니다. 확인해 봤습니다. 계산 옵션을 수동으로 둔 채 저장한 파일과 자동으로 둔 채 저장한 파일을 하나씩 만들고, 새 엑셀에서 여는 순서를 바꿔 가며 Application.Calculation 을 읽었습니다.

먼저 연 파일그때 계산 옵션이어서 연 파일그 뒤 계산 옵션
수동으로 저장한 파일수동(-4135)자동으로 저장한 파일수동(-4135) 그대로
자동으로 저장한 파일자동(-4105)수동으로 저장한 파일자동(-4105) 그대로

두 순서 모두, 먼저 연 파일의 설정이 뒤에 연 파일에까지 그대로 갔습니다. 수동 파일을 먼저 연 상태에서 자동으로 저장한 파일을 열고 그 파일의 A1을 100으로 고쳐 봤더니, 합계 칸은 3에 멈춘 채 102로 바뀌지 않았습니다. 멀쩡하던 내 파일이 갑자기 계산을 멈췄다면 그날 먼저 연 파일을 의심하시면 됩니다. 저희가 확인한 범위는 같은 엑셀 안에서 연 통합 문서 두 개까지입니다.

경우 4 — 순환 참조

B4 에 =B4+1 을 넣었습니다. 값은 0 이 됐고 .HasFormula 는 True 였습니다. 수식이긴 한데 계산이 안 된 것입니다. 시트의 .CircularReference 를 읽으니 B4 가 나왔습니다. 자기 칸을 가리키지 않는 =A1*2 로 고치니 20이 됐습니다.

저희는 COM에서 대화상자를 끄고 돌렸기 때문에 화면 경고는 보지 않았습니다.

어디부터 보면 되나

  1. 그 칸이 왼쪽·오른쪽 어느 쪽에 붙어 있는지 봅니다. 저희 캡처에서는 글자로 들어간 칸이 왼쪽, 계산된 숫자가 오른쪽이었습니다. 맞춤을 손댄 표에서는 이 표시가 통하지 않으니 참고로만 쓰시고 서식과 함께 보셔야 합니다.
  2. 그 칸의 셀 서식이 「텍스트」인지 봅니다. 저희 경우 1의 칸은 .NumberFormat 이 @ 였고 .HasFormula 가 False 였습니다.
  3. 서식이 일반인데도 글자로 남는 경우를 저희는 두 가지 봤습니다. 서식만 바꾸고 수식을 다시 넣지 않은 경우(경우 1)와 앞에 작은따옴표가 붙은 경우(경우 2)입니다. 둘 다 고치는 법은 수식을 다시 넣는 것으로 같습니다.
  4. 숫자는 나오는데 안 바뀌면 상태 표시줄에 「계산」이 있는지 봅니다 → 경우 3.
  5. 0이 나오면 그 수식이 자기 칸을 포함하고 있지 않은지 봅니다 → 경우 4.

화면에서 따라 하기

2026-09-28 보강 — 공식 도움말 대조, 이 화면 절차는 직접 실행하지 않음. Windows 데스크톱 Excel 기준입니다. 위의 복구 값과 그림은 2026-09-18 원래 시험에서 얻은 것입니다.

  1. 숫자가 갱신되지 않으면 자동 계산을 확인합니다. 「수식 → 계산 옵션 → 자동」을 선택합니다. 같은 설정은 「파일 → 옵션 → 수식 → 계산 옵션 → 통합 문서 계산 → 자동」에서도 찾을 수 있습니다. 한 번만 계산하려면 「수식 → 지금 계산」 또는 F9를 씁니다. 데스크톱에서는 계산 설정이 열려 있는 다른 통합 문서에도 적용됩니다. Microsoft 계산 옵션 도움말
  2. 텍스트 서식이면 일반으로 바꾼 뒤 다시 입력합니다. 문제 셀을 선택하고 Ctrl+1 → 「표시 형식 → 일반 → 확인」을 고른 뒤 F2 → Enter를 누릅니다. 앞 작은따옴표가 붙은 경우에는 일반 서식인 셀을 선택하고, 따옴표 없이 =A1+A2 전체를 새로 입력한 뒤 Enter를 누릅니다. Microsoft 수식 문제 해결 도움말
  3. 시트 전체가 수식으로 보이면 표시 설정부터 봅니다. 「수식 → 수식 표시」가 켜져 있다면 다시 눌러 결과 표시로 전환합니다. 이 항목은 수식과 결과의 표시를 바꾸는 기능입니다. Microsoft 수식 표시 도움말
  4. 순환 참조는 해당 셀을 찾아 고칩니다. 「수식 → 오류 검사 옆 화살표 → 순환 참조」에서 셀 주소를 선택하고, 수식이 자기 셀로 되돌아오지 않도록 참조를 고칩니다. 여러 셀이 연결되어 있다면 「참조되는 셀 추적」·「참조하는 셀 추적」으로 연결을 확인합니다. Microsoft 순환 참조 도움말

실패한 것

  • 한국어 엑셀에서 COM으로 NumberFormat = "General" 을 주니 Range 클래스 중 NumberFormat 속성을 설정할 수 없습니다. 오류가 났습니다. NumberFormatLocal = "G/표준" 으로 바꿔서 통과했습니다. 이 글의 복구는 그 방법으로 돌린 결과입니다.
  • 통합 문서가 하나도 열려 있지 않을 때 $xl.Calculation 을 읽으면 -2146826246 이 나옵니다. 문서를 하나 열면 -4105, 다시 다 닫으면 -2146826246 으로 돌아갔습니다. 세 번 다 확인했지만 이 값이 무엇을 뜻하는지는 알아내지 못했습니다. 이 글의 계산 옵션 값은 모두 문서를 연 상태에서 읽은 것입니다.
  • 화면에서 메뉴나 키를 눌러 재현하지는 못했습니다. 그림 세 장은 COM으로 값을 바꾸면서 엑셀 창만 따로 캡처한 것입니다.

확인하지 않은 것

  • 2026-09-18 원래 시험에서는 계산 옵션을 바꾸는 리본 메뉴를 눌러 보지 않았습니다. 확인한 것은 Application.Calculation 값과 상태 표시줄의 「계산」 글자입니다. 위의 메뉴 경로는 2026-09-28 공식 도움말 대조로 보강했으며, 직접 눌러 본 결과는 아닙니다.
  • 텍스트로 들어간 칸 여러 개를 한꺼번에 고치는 방법은 돌려 보지 않았습니다.
  • 작은따옴표가 붙은 칸을 눌렀을 때 수식 입력줄에 그 따옴표가 보이는지는 확인하지 않았습니다. 저희가 본 것은 .Text 와 .PrefixCharacter 값입니다.
  • 「수식 표시」 기능은 직접 켜 보지 않았습니다. 위의 표시 전환 경로는 공식 도움말에서 확인한 것이며, 원래 네 가지 실측 사례에 추가한 시험 결과는 아닙니다.
  • 순환 참조일 때 화면에 뜨는 경고 문구와 상태 표시줄 표시는 보지 않았습니다.
  • 반복 계산(Iteration)을 켠 상태의 순환 참조는 시험하지 않았습니다. 시험할 때 Iteration 은 False 였습니다.
  • 쓴 수식은 덧셈(=A1+A2, =B1+B2)과 순환 참조용 =B4+1, 복구용 =A1*2 넷뿐입니다. VLOOKUP처럼 인수가 많은 함수에서 같은지는 보지 않았습니다.

함께 보기