나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 자유 (jaufree)

추천:  2
파일:     조회:  5377
제목:   엑셀 내장함수을 사용하지 않고 VBA에서 올림을 어떻게 하나요?
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

1. 엑셀 버전(95,97,2000,2002):
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP):
3. CPU (486,PentiumI/II/III/IV...):
4. RAM (32,64,128,256,512MB,1G...): 

* 아래줄에 질문을 작성하세요 >>
VBA에서 올림 함수가 없어서 실수인데이타 중에서 정수와 실수을 가져와서 실수가 있으면 정수에 1을 더하고 실수가 없으면 정수만 표현하는 방법으로 올림 함수를 구현할려구 하는데 정수와 실수을 각각 구분하여 저장하는 방법이 없나요? lint함수를 사용하여 구현할려구 했는데 반올림되어서 정수로 되기 때문에 원하는 결과가 안나오네요... 
 
엑셀내장함수인 roundup함수(application.worksheetfunction.roundup)을 이용하는 방법말고 VBA에서 변수에 임의의 data을 사용하여 올림하는 결과값을 만들는 코드좀 가르쳐주세요..
 
[불량 게시물 신고]  
사내안녕하세요..^^

미흡하지만 제가 답변을..

..좋은 함수를 놔두시고 왜 어려운 길을 가시려하시는지요..(엑셀내장함수도 간간히 쓰잘데가(?) 많습니다..^^)

하여간, 실수 및 정수를 구분하는 것을 구분하는 간단히 이렇게 하면 되겠습니다.

if int(변수)=변수 then

정수면 참, 실수면 거짓이 되겠지요..^^

..도움이 되셨기를..
08-14 (16:12)
삭제 ■신고
자유사내님 답변 고맙습니다..
제가 질문을 잘못한거 갔네여..
질문내용은 
1. 올림한 값을 구하는 방법입니다.
   사내님의 방법대로 정수와 실수 부분을 찾을수 있는데 실수 중에서
   정수 부분을 찾는 방법이 생각이 안나서.. int로 형변환하여 정수을
   찾을려고 생각했는데 int에서 정수로 반환시 반올림하여 정수를 만드는
   바람에 1.5 이상인 경우와 미만인 경우의 값이 다르게 나옵니다.
2. 엑셀내장함수는 참조영역이 변수가 아니라 엑셀 셀의 값을 참조하는것 같네요 
에를 들어서 
su = 12.4
su_int= application.worksheetfunction.roundup(su)
하였더니 에러가 발생하더라구요.. 
도움말을 참조하였더니 엑셀시트의 셀에 이름을 정의하여 사용하네요..

1,2에 대해 제가 잘못이해하고 있는부분이 있거나 해결방법이 있으면 답변부탁드립니다...
08-14 (17:33)
삭제 ■신고
푸른가을하늘su_int= application.worksheetfunction.roundup(su)
을 su_int= application.worksheetfunction.roundup(su, 0)으로
하시면 원하는 값을 얻으실 수 있지 않을까요 ?
그럼 잘되시길....
08-14 (17:55)
삭제 ■신고
        
  

작성일 : 2003-08-14(15:58)
최종수정일 : 2003-08-14(15:58)