Excel numberformat
-
06-07-2019 - |
문제
나는 Excel 2007을 사용하고 있습니다 ... 다음 범위가 있습니다 ...
D E G H
5 1 2 1 1
6 2 2 1 1
이제 범위 F8 : G9를 선택하고 다음 공식 "= d5 : e6*0.2+g5 : h6*0.3"을 작성하고 ctrl+shift+enter를 누르고 있습니다. 다음 결과
F G
8 0.5 0.7
9 0.7 0.7
이제이 결과 범위를 선택하고 셀 형식을 10 진수 자리의 숫자로 숫자로 변경합니다 ... 이제 다음과 같은 결과가 있습니다.
F G
8 1 1
9 1 1
이제이 범위 값을 읽는 C# 프로그램이 있습니다 ... (범위 (...). 1,1 ... 현실에서는 옳지 않습니다. 또한 C# 프로그램은 이제 이러한 고유 한 값을 사용하여 Equals 연산자를 사용하여 색상으로 셀을 형식화합니다.이 경우 셀 값은 1과 같지 않습니다.
Numberformat 이후에 그 변화를 셀의 실제 가치 2로 변경하는 것이 엑셀에서 가능합니까? 예를 들어 요청할 때
MsgBox Range("F8").Value2
그것은 0.5를 보여 주지만 셀 형식을 변경했기 때문에 1 대신 1을보고 싶습니다 ... 범위 값 ( "f8").
내 질문은 NumberFormat 후 F8 : G9 범위의 값을 NumberFormat이 변경 한 것보다 변경할 수있는 방법입니다. ????
감사해요!!!
해결책
사용 Text
의 속성 Range
객체 형식 버전을 반환합니다
예 : 셀 A1이 0.77458을 포함하고있는 경우에는 십자 자리로 구성되어 있다면
Range("A1").Value2
= 0.77458 (aDouble
값)Range("A1").Text
= 0.8 (a로String
값)
다른 팁
형식은 데이터가 어떻게 표시되는지에 대한 프레젠테이션 문제 일뿐입니다. 둥근 값으로 작업하려면 Round Function을 사용하여 Excel 또는 Math.Round를 사용하여 .NET에서 실제 값을 반올림해야합니다.