VBA를 학습하면서 읽은 모든 소스에서 \
연산자가 정수 나누기를 수행한다고 알려줍니다. 그래서 나는 그것을 부동 소수점의 정수 부분을 추출하는 데 사용할 수 있다고 생각했습니다. 내가 계산 할 필요가Excel 2010 VBA 백 슬래시 () 연산자
A = 5
B = 50%
:
나는이 같은 스프레드 시트를 C = A x B
을 모두 버림해야 가장 가까운 정수 (즉, 어떤 2.01, 2.1, 2.9, 2.99 등으로 내림 2).
내가이 할 수있는 생각 :
C = (A * B) \ 1
그러나이 작동하지 않습니다 - 플로트 부분은 반올림되어 정수를 수행하기 전에 (즉, 2.25 3로 이동합니다) 나에게 나타납니다 분할.
내가 지금 이런 짓을했는지 :
(A * B
정수 가능성이 표현 문제에 정확히 동일) 어떤 경우에는 작동하지 않습니다
C = (A * B - 0.5) \ 1
.
그 밖의 무엇을 할 수 있습니까?
무엇 요 당신이 말하기 때문에 당신이 말하기 때문에 당신이 말하기 때문에 지금 쓰여진 것은 거의 이해가 안됩니다. 3 **에 이르기까지 모두 반올림하고 2.25에서 3으로 반올림하는 것은 잘못된 것입니다. 당신의 마음을 만드십시오! 3이 잘못 되었습니까? 아닙니다. 2.01은 3에 '가장 가까운'것이 아니며 3은 2에서 내려간 것이 아닙니다. http://en.wikipedia.org/wiki/ 반올림 모드의 이름은 반올림하고 동사는 반올림하지 마십시오. "혼란을 가져올 수 있기 때문에 단순히"둥근 "의미하는 경우. 재정적/회계 적 반올림 작업을해야한다면 "to-even"(그래서 '3'이 아님)을 기억하고 "to-even", "fiscal"또는 "statistically-safe"라고 부릅니다. – quetzalcoatl
@ Wolfie 오, 오, 나는 이것에 대해 대답하려고했고, 6 년 전에 질문 받았다는 것을 깨달았다. –
@DarrenBartrup 나는 대답을 찾고, 오타와 잘못된 포맷을 보았고, 미래의 독자들을 위해 그것을 찾은 것보다 더 알맞은 곳을 떠났다. 이미 여기있는 것보다 더 나은 답을 제공 할 수 있습니다. – Wolfie