[VBA]

· [VBA]
Dim digit As Integer Dim num As Double num = 123.456 digit = Len(CStr(num)) - InStr(CStr(num), ".")
· [VBA]
엑셀의 파일 형식중 .xls, .xlsx 파일등을 번갈아가며 사용할 때 저장 형식을 지정해 주지 않으면 save나 saveas 명령어를 쓸 때 오류가 날경우가 있다. 그럴 경우를 방지하고자 앞에 기본 저장 설정을 해주는 것이 좋다. Sub 기본형식변경() Application.DefaultSaveFormat = 51 Debug.Print Application.DefaultSaveFormat '또는 Application.DefaultSaveFormat = xlWorkbookDefault Debug.Print Application.DefaultSaveFormat End Sub 앞에 기본으로 써주면 된다. 필자는 습관처럼 아래코드를 쓰고 시작한다. Sub 기본설정() Application.ScreenUpdat..
· [VBA]
※ 백에서 엑셀 파일 가져오기 아래 코드를 실행하면 데이터를 가져올 파일이 직접 열리면서 값을 가져오게 된다. (순서가 바껴서 수정) 아래가 getobject 함수를 사용해서 백에서 가져옵니다. Sub 다른엑셀파일가져오기() Application.ScreenUpdating = False Application.DisplayAlerts = False Dim str가져올파일 As String Dim obj가져올파일 As Object Dim wb가져올파일 As Workbook, wb현재파일 As Workbook Dim ws시트1 As Worksheet, ws현재시트 As Worksheet '하드코딩 str가져올파일 = "C:\Users\USER\Desktop\Test\test.xlsx" '현재 워크북 set S..
· [VBA]
보통 아래의 화면처럼 숫자인데 초록색 삼각형 경고창이 뜨는 경우 VBA에서 값을 계산할 때 인식하지 못 하는 경우가 생긴다. 그럴 경우 초록색 삼각형을 풀어주고 싶을 때 vba 서식을 NumberformatLocal 함수를 써서 서식을 바꾸지만 해당 경우같은 경우는 서식은 바뀌지만 경고창은 풀리지 않는다. 그럴경우 vba를 사용하지 않는다면 셀을 더블클릭하거나 해야 하는데 vba에서는 어떻게 하는지 알아보자. Sub 형식변환() Range("b2") = Val(Range("b2")) End Sub 위는 변환을 하는 코드이다. 결과를 보면 해당셀의 경고창이 사라졌다. 이렇게 해서 전체를 풀고싶으면 전체를 range변수로 잡아서 풀어줘야 겠다...생각하고 코드를 짠다면 아래와 같을것이다. Sub 형식변환()..
· [VBA]
워크시트가 숨겨진경우 모든 워크 시트를 보이게하는 코드이다. Sub VisibleSheets() Dim ws As Worksheet For Each ws In ActiveWorkbook.Sheets ws.Visible = xlSheetVisible Next End Sub
· [VBA]
Sub sum() Range("c3").Value = Application.WorksheetFunction.sum(Range("a1", "a10")) End Sub - 지금은 하드코딩을 했지만 적절하게 사용하면 된다.
jkod
'[VBA]' 카테고리의 글 목록 (2 Page)