George는 다음과 같은 라틴 아메리카 통화 형식을 사용하여 정보를 제출해야하는 단일 통합 문서를 가지고 있습니다. 238.769,76. 전역 설정을 변경하지 않은 George는이를 처리 할 방법을 찾지 못했습니다. 그는 단일 통합 문서에 대해서만 통화 형식을 변경하는 방법이 있는지 궁금합니다.

George가 말하는 “전역 설정”은 기술적으로 Microsoft에서 “지역 설정”이라고합니다. 이는 실제로 Windows에서 직접 처리되므로 Excel을 포함하여 Windows 내에서 작동하는 모든 프로그램에 변경 사항이 적용됩니다.

마법을 수행하기 위해 VBA 매크로를 사용하여 일시적으로 설정을 변경하는 방법이 있습니다. 이 매크로를 특정 통합 문서의 열기 및 닫기에 연결하면 요구 사항이 적절하게 충족 될 수 있습니다. 다음은 매크로입니다.

Dim oldDecimalSep As String Dim oldThousandsSep As String   Private Sub Workbook_Open()

oldDecimalSep = Application.International(xlDecimalSeparator)

oldThousandsSep = Application.International(xlThousandsSeparator)

Application.DecimalSeparator = ","

Application.ThousandsSeparator = "."

Application.UseSystemSeparators = False End Sub
Private Sub Workbook_ BeforeClose(Cancel As Boolean)

Application.DecimalSeparator = oldDecimalSep     Application.ThousandsSeparator = oldThousandsSep     Application.UseSystemSeparators = False End Sub

이러한 매크로를 사용하려면 다른 형식 구분 기호를 사용할 통합 문서를 엽니 다. 그런 다음 Visual Basic Editor를 열고 프로젝트 창에서 ThisWorkbook 개체를 두 번 클릭합니다. 매크로 코드를 코드 창에 넣고 모든 것을 저장합니다.

이제 통합 문서를 열 때마다 Excel은 기존 구분 기호 정보를 저장하고 George가 원하는대로 쉼표와 마침표를 사용하도록 변경합니다.

통합 문서를 닫으면 이전 구분 기호 정보가 복원됩니다.

이 코드에는 한 가지 문제가 있습니다. 통합 문서가 열려있는 동안 다른 통합 문서도 열려 있으면 다른 서식이 사용됩니다. 트릭은 “특별한”통합 문서로만 작업하는 것입니다.이 통합 문서를 닫으면 모든 것이 정상으로 돌아갑니다.

다음과 같은 코드를 사용할 때 기억해야 할 한 가지가 있습니다. 표시되는 숫자의 형식 만 변경하는 것입니다. Windows에서 지역 설정을 처리하는 방식 때문에 그렇게 할 필요조차 없습니다. 즉, Excel에서 다음과 같은 숫자가 표시 될 수 있습니다.

1,234,567.89. 다른 지역 설정을 사용하는 국가의 사용자에게 통합 문서를 보내면 다음과 같이 표시됩니다.

1.234.567,89. 즉, Windows는 숫자가 표시되는 세계의 지역에 대해 숫자를 올바르게 표시합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (13307)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.