WorkSheet, WorkBook, Application Object - Heeyoung-Ahn/Excel_VBA GitHub Wiki

Worksheet Object

  • ์‹œํŠธ ์„ ํƒ
    Sheets(โ€œ์‹œํŠธ์ด๋ฆ„โ€).Select, Sheet1.Select, Sheets(1).Select
  • ๋ณต์ˆ˜์˜ ์‹œํŠธ ์„ ํƒ
    Sheets(Array(โ€œ์‹œํŠธ์ด๋ฆ„1โ€, โ€œ์‹œํŠธ์ด๋ฆ„2โ€)).Select
  • ์›Œํฌ์‹œํŠธ ์ถ”๊ฐ€
    Sheets.Add After:=Sheets(Sheets.Count)
    Sheets(Sheets.Count).Name = โ€œ์‹œํŠธ์ด๋ฆ„โ€
  • ์›Œํฌ์‹œํŠธ ๋ณต์‚ฌ
    Sheets(โ€œ์‹œํŠธ์ด๋ฆ„โ€).Copy After:=Sheets(Sheets.Count)
    Sheets.Copy
  • ์›Œํฌ์‹œํŠธ ์‚ญ์ œ
    Sheet1.Delete
  • ์›Œํฌ์‹œํŠธ ์ˆจ๊ธฐ๊ธฐ/๋ณด์ด๊ธฐ
    Sheet1.Visible = False / True
    Sheet1.Visible = xlSheetHidden / xlSheetVeryHidden / xlSheetVisible
  • ์›Œํฌ์‹œํŠธ ๋ณดํ˜ธ / ๋ณดํ˜ธํ•ด์ œ
    Sheet1.Protect Password:=โ€œ12345โ€
    Sheet1.Unprotect Password:=โ€œ12345โ€

Workbook Object

  • ์—ด๊ธฐ
    Workbooks.Open Filename:=ThisWorkbook.Path & โ€œtest.xlsxโ€, Password:=โ€œ12345โ€
    Workbooks.Open Filename:=โ€œD:\ํด๋”๋ช…\test.xlsxโ€, Password:=โ€œ12345โ€
  • ์ €์žฅํ•˜๊ธฐ
    ActiveWorkbook.Save / ThisWorkbook.Save
    ActiveWorkbook.SaveAs Filename:=โ€œtest.xlsmโ€, Fileformat:= xlOpenXMLWorkbookMacroEnabled
Sub saveFile()
    Sheet1.Copy
    ActiveWorkbook.SaveAs Filename:=โ€œtest.xlsxโ€, Password:=โ€œ12345โ€
End Sub
  • ํ†ตํ•ฉ๋ฌธ์„œ ์ด๋ฆ„, ๊ฒฝ๋กœ
    ActiveWorkbook.Name
    ActiveWorkbook.FullName
Sub gerWorkbookPath()
    Dim strFileName As String
    Dim strFilePath As String
    strFileName = ActiveWorkbook.FullName
    strFilePath = Left(strFileName, InStrRev(strFileName, โ€œ\โ€))
    MsgBox strFileName & vbNewLine & strFilePath
End Sub
  • ํ†ตํ•ฉ๋ฌธ์„œ ๋‹ซ๊ธฐ
    ActiveWorkbook.Close saveChanges:=False

Applicatoin Object

  • ์Šคํฌ๋ฆฐ ์—…๋ฐ์ดํŠธ ์„ค์ •
    Application.ScreenUpdating = True / False
  • ๊ณ„์‚ฐ ์˜ต์…˜ ์„ค์ •
    Application.Calculation = xlCalculationManual / xlCalculationAutomatic
  • ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€ ํ‘œ์‹œ ์„ค์ •
    Application.DisplayAlerts = True / False
Sub DisplayAlertsDemo()
    Dim wb As Workbook
    Application.DisplayAlerts = False
    For Each wb In Application.Workbooks
        If wb.Name <> ThisWorkbook.Name Then
            wb.Close
        End If
    Next wb
    Application.DisplayAlerts = True
End Sub

Sub DisplayAlertsDemo2()
    Dim sht As Worksheet
    Application.DisplayAlerts = False
    For Each sht In Worksheets
        If sht.Name <> ActiveSheet.Name Then
            sht.Visible = xlSheetHidden
        End If
    Next sht
    Application.DisplayAlerts = True
End Sub
  • ์ด๋ฒคํŠธ ํ™œ์„ฑํ™” ์„ค์ •
    Application.EnableEnvets = True / False
  • ์—‘์…€ ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ
    Application.Quit