1. 원하는 시트로 이동하기
─────────────────────────────────────────────
Sub NAME()
Sheets("Sheet1").Activate
'"Sheet1"의 시트를 활성화 시킨다.
'또는 Sheets(1).Activate 을 입력하면 첫 번째 시트를 활성화 시킨다.
End Sub
─────────────────────────────────────────────
2. 원하는 시트로 이동하고 원하는 열에서 Null값 찾기(다음 입력 순번 찾기) 두 가지 방법
─────────────────────────────────────────────
Sub NAME()
' 아래와 같이 순환문 구조로 해당 열의 공백 란을 찾을 수 있음
Dim i As Integer
Dim list As Integer
Dim x As Integer
i = 0
x = WorksheetFunction.CountA(Columns(1))
'변수 x에 첫 번째 열의 셀 값이 있는 셀 개수를 저장함
Sheets("data").Activate
'"data" 라는 시트를 활성화 시킴
For list = i To x
'0부터 x 까지 순환 시킴
If Cells(3 + i, 1).Value = "" Then
Cells(3 + i, 1).Activate
Exit For
End If
'해당 Cell 값이 Null이면 해당 Cell을 활성화 시키고 순환문을 종료함
i = i + 1
Next list
'해당 Cell 값이 Null이 아니면 해당 Cell아래로 반복 순환
End Sub
─────────────────────────────────────────────
또는 아래와 같이 단순한 방법도 있음
─────────────────────────────────────────────
Sub NAME()
Dim x As Integer
Sheets("data").Activate
'"data" 라는 시트를 활성화 시킴
x = WorksheetFunction.CountA(Columns(1))
'변수 x에 첫 번째 열의 셀 값이 있는 셀 개수를 저장함
Cells(x + 1, 1).Activate
'해당 Cell을 활성화
End Sub
─────────────────────────────────────────────
3. 수식이 들어 있는 행을 아래에 추가(insert)하는 방법
─────────────────────────────────────────────
Sub NAME()
Dim x As Integer
Dim y As Variant
Dim y1 As Variant
Dim y2 As Variant
Dim y3 As Variant
Dim y4 As Variant
Dim y5 As Variant
x = WorksheetFunction.CountA(Columns(7))
'변수 x에 일곱번째 열의 셀 값이 있는 셀 개수를 저장함
y = x + 1
'변수 y에 x변수 + 1을 함
Cells(y, 4).Activate
'추가 하고 싶은 행(마지막행)을 활성화 시키고
y1 = Cells(y, 4).Formula
y2 = Cells(y, 7).Formula
y3 = Cells(y, 8).Formula
y4 = Cells(y, 9).Formula
y5 = Cells(y, 10).Formula
'각 변수에(v1 ~ v5) 해당 셀 값의 속성(Formula)을 저장
ActiveCell.EntireRow.Insert
'활성화 된 행에서 행 추가하기
Cells(y, 4).Formula = y1
Cells(y, 7).Formula = y2
Cells(y, 8).Formula = y3
Cells(y, 9).Formula = y4
Cells(y, 10).Formula = y5
'해당 셀 값에 변수 각 변수(v1 ~ v5)의 속성(Formula)을 저장
End Sub
─────────────────────────────────────────────
4. 선택한 행 내의 원하는 행 값을 원하는 시트, 셀에 저장하기
─────────────────────────────────────────────
Sub NAME()
Dim x As Integer 'x = 열번호
Dim y As Integer 'y = 행번호
Dim z As Long
x = ActiveCell.Column
y = ActiveCell.Row
z = Cells(y, 2)
'ActiveCell.Address / 현재 활성화 된 셀의 주소
'Activecell.column / 활성셀의 열번호
'Activecell.row / 활성셀의 행번호
'z 변수에 선택된 Cell의 값을 저장
Sheets(1).Activate
'첫 번째 시트 활성화
Cells(4, 35) = z
'해당 Cell 값에 z변수의 값을 저장
End Sub
─────────────────────────────────────────────
5. 선택 영역 인쇄 미리보기
─────────────────────────────────────────────
Sub NAME()
ActiveSheet.PageSetup.PrintArea = "$A$1:$AF$48"
'인쇄할 범위 지정
Call 프린트_환경_설정
'"프린트_환경_설정"이라는 프로시저 호출
Worksheets(1).PrintPreview
'해당 영역을 인쇄 미리보기함
End Sub
Sub 프린트_환경_설정()
' 해당 시스템의 OS및 프린트에 따라 다르므로 재설정 필요
'Application.PrintCommunication = False
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0)
.RightMargin = Application.InchesToPoints(0)
.TopMargin = Application.InchesToPoints(0)
.BottomMargin = Application.InchesToPoints(0)
.HeaderMargin = Application.InchesToPoints(0)
.FooterMargin = Application.InchesToPoints(0)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintSheetEnd
.PrintQuality = 600
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintErrors = xlPrintErrorsDisplayed
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.ScaleWithDocHeaderFooter = True
.AlignMarginsHeaderFooter = True
.EvenPage.LeftHeader.Text = ""
.EvenPage.CenterHeader.Text = ""
.EvenPage.RightHeader.Text = ""
.EvenPage.LeftFooter.Text = ""
.EvenPage.CenterFooter.Text = ""
.EvenPage.RightFooter.Text = ""
.FirstPage.LeftHeader.Text = ""
.FirstPage.CenterHeader.Text = ""
.FirstPage.RightHeader.Text = ""
.FirstPage.LeftFooter.Text = ""
.FirstPage.CenterFooter.Text = ""
.FirstPage.RightFooter.Text = ""
End With
'Application.PrintCommunication = True
End Sub
────────────────────────────────────────────
'닥치고 공부 > 공돌이' 카테고리의 다른 글
[스크랩]라디안에 대한 깨달음 (0) | 2016.02.16 |
---|---|
스크립트 언어1 - Python - 202 (0) | 2015.04.01 |
스크립트 언어1 - Python - 201 (0) | 2015.04.01 |
스크립트 언어1 - Python - 102 (0) | 2015.03.25 |
스크립트 언어1 - Python - 101 (0) | 2015.03.25 |