수식을 사용하여 여러 셀의 내용을 하나의 셀로 병합 할 때 Kris는 Excel에서 원본 셀의 서식을 유지하는 데 문제가 있습니다. 예를 들어 셀 A1과 B1에 각각 1과 0.33이 포함되어 있다고 가정합니다. C1 셀에 다음 수식을 입력합니다.

=A1 & " : " & B1

C1 셀의 결과는 다음과 같습니다.

1 : 0.3333333333

결과 C1이 B1 (0.33)에 표시된 것과 일치하지 않는 이유는 B1의 값이 실제로 0.33이 아니기 때문입니다. 내부적으로 Excel은 값을 15 자리로 유지하므로 B1 셀에 = 1 / 3과 같은 수식이 포함되어 있으면 내부적으로 0.33333333333333으로 유지됩니다. 그러나 B1 셀에 표시되는 내용은 셀 서식에 따라 다릅니다. 이 경우 서식은 소수점 이하 두 자리 만 표시하도록 설정되어있을 수 있습니다.

그러나 셀 C1에서 원하는 결과를 얻을 수있는 여러 가지 방법이 있습니다. 한 가지 방법은 A1 및 B1 셀에서 가져온 값의 서식이 지정되도록 수식을 약간 수정하는 것입니다. 예를 들어 다음 예제에서는 TEXT 함수를 사용하여 형식을 지정합니다.

=TEXT(A1,"0") & " : " & TEXT(B1,"0.00")

이 경우 A1은 정수만 표시하도록 형식이 지정되고 B1은 소수점 이하 두 자리 만 표시되도록 형식이 지정됩니다. ROUND 함수를 사용하여 비슷한 결과를 얻을 수도 있습니다.

=ROUND(A1,0) & " : " & ROUND(B1,2)

또 다른 가능한 해결책은 Excel이 통합 문서의 정밀도를 처리하는 방식을 변경하는 것입니다. 다음 단계를 따르십시오.

  1. 도구 메뉴에서 옵션을 선택하십시오. Excel은 옵션 대화 상자를 표시합니다.

  2. 계산 탭이 표시되는지 확인합니다. (그림 1 참조)

  3. 표시된 정밀도 확인란이 선택되어 있는지 확인합니다.

  4. 확인을 클릭하십시오.

이제 Excel은 일반적으로 유지되는 전체 15 자리 정밀도로 계산을 수행하는 대신 모든 계산 및 연결에서 화면에 표시된 정밀도를 사용합니다. 이 접근 방식은 일부 사용자에게는 허용 될 수 있지만 다른 사용자에게는 해결하는 것보다 더 많은 문제가 발생합니다. 원하는 방식으로 출력을 형식화하려면 더 낮은 정밀도로 살 수 있는지 결정해야합니다.

또 다른 접근 방식은 거기에 저장되는 것이 아니라 대상 셀에 대해 표시되는 것을 반환하는 사용자 정의 함수를 만드는 것입니다. 다음 매크로는 이와 관련하여 훌륭하게 작동합니다.

Function FmtText(rng As Range)

Application.Volatile     FmtText = rng.Cells(1).Text End Function

이 매크로를 사용하려면 워크 시트에서 다음과 같은 수식을 사용합니다.

=FmtText(A1) & " : " & FmtText(B1)

_ 참고 : _

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

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

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

이 팁 (3213)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다. 여기에서 Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁의 버전을 찾을 수 있습니다.

link : / excelribbon-Matching_Formatting_when_Concatenating [연결시 서식 일치].