IT/Excel & VB & VBA
두번째. 엑셀시트에 내용을 매크로에서 가져오고 쓰기2
원창연
2020. 11. 28. 11:01
▶ 엑셀시트에 위치 및 셀에 값을 변경하기
Public Sub 사용자처리()
Sheet("sheet1").Cells(3, 3) = "하하하하"
End Sub
※ 참고
Sheet("시트명") : 특정 시트
Workbooks("파일명").Sheet("시트명") : 해당파일명에 해당 시트명
ActiveWorkbook : 현재 활성화 되어 있는 파일 [("파일명")은 없음]
ActiveSheet : 현재 활성화 되어 있는 시트 [("시트명")은 없음]
▶ 엑셀 시트의 위치를 선택하는 두가지 방법
Range("C2") 라 직접 쓰는 방식이 있지만 우리가 반복작업을 하기위해 A->B->C를 FOR문이나 lOOP에서 돌리기 어렵기 때문에 Cells(세로줄 라인위치, 가로줄 라인 위치)를 사용합니다.
하단은 ' 로 주석을 하였고 동일한것으로 Cells명령어를 사용하여 작성해보았습니다.
End Sub
'주석 엑셀 시트에 가져오는 방법
MsgBox Cells(3, 3) 'Cells(행[y축] 위치, 열[x축] 위치) 표시
MsgBox Range("C3") 'Range는 열은 영문으로 행은 위치로 표시
End Sub
※ 주석은 ' 작은따옴표 하나이며 작은따옴표 뒤에는 전부 주석됨
※ 위 두가지 방법은 동일한 결과를 갖게 됨
▶ 엑셀 시트쓰기, 엑셀시트에서 값을 사용하기
등호(=)을 사용하고 오른쪽에 시트에 저장할값을 쓰면됩니다.
Public Sub 사용자처리()
Cells(3, 3) = "하하하하" '=>엑셀시트에 하하하하를 저장
Range ("C3")= "하하하하"
MsgBox Range ("C3") ' 엑셀시트값을 사용하기
End Sub
처리결과)
Sheets는 일반 Visual Basic(일명 VB)에는 없는 함수로 엑셀에 내장되어 있는 VB로 사람들은 Visual Basic Application(일명 VBA) 라고 합니다.
※ 요약정보
파일함수.시트함수.셀함수
파일함수 : ActiveWorkbook,Workbooks("파일명")
시트함수 : ActiveSheet. WorkSheet("시트명")
셀함수 : ActiveCell, Cell(행 위치, 열 위치), Range( 열 영문, 행위치)
Range예) Range("D1") 하고 Cells(1,4) 는 동일함
※ Cells를 많이 쓰는이유는 For, Loop문으로 코딩하기 위해 많이 사용함