VBA에서 엑셀 함수 이용하기.

학습/엑셀 VBA|2011. 3. 22. 21:45
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

VBA 쓰다가 가끔씩 필요한 함수들이 있기 마련이다
근데 엑셀에서 함수로는 기억이 나는데.. VBA은 어떤거지 라고 의문이 날 때가 있다.


-_- 그 때마다 공간 하나에 함수를 쓰고 가져오는 방법도 쓰지만..
Exam>


Range("B1").FormulaR1C1 = "=SUM("A:A")"  .. 뭐 이런식??으로 쓰고
Range("B1").Value                                    이런 식으로 값을 가져오는 방법..


하지만 그 보다  간단하고 좋은 방법이 있다.


dim fSum as SIngle
fSum =Evaluate("=SUM(A:A)")


부왘!
이렇게 그냥 바로 Evaluate를 사용하면 된다!


다른 방법으로...


Application.WorksheetFunction.sum()...
Application.WorksheetFunction.Acos()...
Application.WorksheetFunction.pi()...


처럼 Application의 Function으로 바로 접근하는 법도 있지만.. Excel함수를 바로 사용하는게 아니라서.. 익숙치 않아 힘들 때가 있으니깐.... 잘 안쓰게 되더라..


뭐 그렇다는 겁니다...


*반말 표현이나 상스러운 표현이 있더라도 이해해주세요 ㅠㅠ
*혼자 정리하기 위해서 쓰는 문서라서 그래요...

댓글()

엑셀 VBA를 이용한 파일 존재 유무 확인

학습/엑셀 VBA|2011. 3. 10. 14:43
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
엑셀 VBA를 이용해서 파일이 존재하는지 여부를 확인하는 함수를 만드는 방법입니다.

VBA를 열어서 아래와 같은 코드를 입력해 놓으면, 

=FileChk([파일명]) 을 이용해서 파일 여부를 확인할 수 있습니다.

------------------입력할 코드입니다. ------------------
Function FileChk(sFileName As String)
    Dim sChkFile As String
    
    sChkFile = Dir(sFileName)
    If (Len(sChkFile) > 0) Then
        FileChk = True
    Else
        FileChk = False
    End If
End Function
------------------------------------------------------

[파일명]에 해당되는 파일이 있을 경우에는 TRUE를 반환합니다.
(물론 없을 경우에는 FALSE)를 반환하지요.

IF문을 이용해서 다른 Text로 바꾸어 출력할 수도 있어요 ^^
=IF( FileChk([파일명]), "있음!", "없네요!")

아... 그리고 그냥 파일명만을 넣으면, 저장된 엑셀 파일과 같은 위치에 있는 파일만 체크합니다.
만약 다른 폴더에 있는 것을 검사하고 싶으시면,

C:\Text.txt 처럼 경로명까지 붙여주시면 됩니다.


댓글()

VBA의 Break문 Exit

학습/엑셀 VBA|2011. 3. 10. 14:35
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
엑셀 VBA를 사용하면서 C에 있는 break 문을 찾았는데..
찾을 수가 없더군요.

하지만 같은 기능을 하는 Exit 문이 존재합니다.



For문에서 나가고 싶으면
Exit For

Do-While문에서 나가고 싶으면
Exit Do

위와 같은 방법으로 사용할 수 있어요.

댓글()