2010-01-21 4 views
0

Excel 워크 시트에서 수식을 ASP 페이지로 복제하려고하지만 다른 결과가 나타납니다. 실제로 ASP가 끝나기 때문에 오류가 발생합니다. 루트를 음수로 제곱하려 함).다른 결과 얻기 Excel에서 ASP로 수식 복사하기

Excel은 기존 ASP와 마찬가지로 연산자 우선 순위를 처리합니까?

내가 복제하려고하는 수식은 통계적 유의성에 대해보고하기 위해 수식을 만들지 않은 간단한 "T-Test"이며 Excel에서 올바르게 작동합니다. Excel에서 세포

A2 = 1098 
B2 = 183 

A4 = 20.4 
B4 = 17.49 

처럼 그리고 세포 E4는이 공식이 포함되어 단순히 복사/붙여 넣기 고전적인 ASP에 수식이 모든 $를 제거하고 SQR에 SQRT를 변경하는 것이, 그래서

=(A4-B4)/SQRT(((($A$2*A4)+($B$2*B4))/($A$2+$B$2))* 
(1-((($A$2*A4)+($B$2*B4))/($A$2+$B$2)))*((1/$A$2)+(1/$B$2))) 

을 4 개의 변수 A2, B2, A4, B4를 선언했다. 그러면 오류가 반환됩니다 (잘못된 프로 시저 호출).

ASP에서 수식의 첫 번째 부분 인 (A4-B4)/SQRT를 제거하면 코드가 -2.41868099141296을 반환하지만 Excel에서는 0.001019435를 반환합니다.

나는 먼저 공식을 따로 따로 계산 해보고 SQRT를 할 준비가되었지만 같은 것을 마주 보며 노력했다.

이것은 바보 같은 실수입니까? 내가 시도까지 한 시점에서 음수의 제곱근에보고 된 = SQRT (-9) (나는 처음과 마지막 줄에 줄 바꿈을 삽입 한 내가 사용

ASP 코드는 Excel에서) :

A2 = cdbl(1098.0) 
A4 = cdbl(20.4) 
B2 = cdbl(183.0) 
B4 =cdbl(17.49) 

' Remove all the $, and (A4-B4)/SQRT part 
response.write "<p>Result: " & ((((A2*A4)+(B2*B4))/(A2+B2))*(1-(((A2*A4)+(B2*B4)) 
/(A2+B2)))*((1/A2)+(1/B2))) & "</p>"` 

답변

2

나는. 엑셀 스프레드 시트의 열 A4에서

을 dufus이야 및 B4는 백분율로 지정됩니다.이 세포의 실제 값은 각각 0.204와 0.1749입니다. ASP에 복사하여 붙여 넣을 때 Excel 수식이 작동합니다. - 입력 한 값이 100x lar임을 알아 채지 못했습니다. 기대 이상.

다음 코드는

A2 = cdbl(1098.0) 
A4 = cdbl(0.204) 
B2 = cdbl(183.0) 
B4 =cdbl(0.1749) 

response.write "<p>Result: " & (A4-B4)/SQR((((A2*A4)+(B2*B4))/(A2+B2))* 
(1-(((A2*A4)+(B2*B4))/(A2+B2)))*((1/A2)+(1/B2))) & "</p>" 

그래서 지금은 그냥 함수로 그 변환해야 작동합니다.

0

Excel 시트에서 음수의 루트를 가져올 수없는 입력 유효성 검사를 수행하고 있습니까?

또한 관련 ASP 코드를 게시 할 수 있습니까? 정수 - - 그냥 나는 그것이 (FI 1/A2를 Excel에서 항상 수레를 사용하여 ASP 정수를 사용하는 경우 생각

+0

ASP 코드를 게시했지만 공식적으로 $에서 검색/바꾸기를 수행하고 첫 번째 부분을 제거하므로 값이 제곱근 만 남습니다. 내가 얻은 결과는 -2.41868099141296입니다. – Dan

0

... 간단한 전사 오류 일 수 있습니다. 다른 결과가 발생할 수 있습니다

시도 정수 계산 주위에 CDbl에는 (...)를 사용하여.

+0

cdbl()을 사용했지만 똑같은 결과를 얻었습니다. – Dan