목록매크로 (16)
남극
짝수 행 삭제하기 vba에서 짝수 행을 삭제하려면 어떻게 해야 할까요? 우선 For... Next 문을 사용해서 반복을 해주어야 합니다. Sub 프로시저() Dim i As Long Dim lrow As Long lrow = Cells(Rows.Count, 1).End(xlUp).Row Application.ScreenUpdating = False lrow = lrow - 1 Debug.Print lrow For i = lrow To 1 Step -2 Range("A" & i).EntireRow.Delete Next i Application.ScreenUpdating = True End Sub 이 소스코드는 1행이 남을 때까지 계속 짝수 행을 삭제할 수 있습니다. 짝수 행이 모두 사라졌습니다. 이제 이 ..
폼에 시트 값 불러오기 폼에서 시트에 값을 넣었었습니다. 이번에는 폼에서 시트에 값을 불러와보도록 하겠습니다. 영상부터 보시면서 어떻게 되는지 확인하도록 합시다. 셀을 눌르면 화면에 상품 등록 창이 뜨면서 셀에 있는 값이 폼에 들어간 것을 확인하실 수 있습니다. 눌린 행을 확인하는 함수는 이렇습니다. 변수 = Target.Row 정수형을 받습니다. 변수에 현재 위치를 담아주고 사용합니다. 이 또한 링크에 걸어두도록 하겠습니다. sheet1에 있는 소스코드가 눌렀을 때의 이벤트를 담은 소스코드이고 form에 있는 버튼 이벤트는 버튼을 두 번 클릭하면 확인하실 수 있습니다.

시트에 입력한 값 넣기 오늘은 form에서 입력한 값을 sheet에 넣어보려고 합니다. 가볍게 상품을 등록하는 폼을 만들고 시트에 상품을 등록해보도록 하겠습니다. 간단하게 만들어봤습니다. 이름을 적고 가격을 등록하는 시스템입니다. 값을 입력하고 완료 버튼을 누르면 form이 종료되면서 데이터가 등록됩니다. 마지막 행의 위치가 어디인지 계산해서 가장 마지막 행에 값을 입력해줍니다. 이제 셀에서 매크로를 사용해서 등록 창을 화면에 띄우도록 하겠습니다. 버튼을 만들어주고 매크로를 등록합니다. 모듈을 하나 만들어서 sub 프로시저에 다음과 같은 소스코드를 입력해줍니다. 저는 UserForm1의 이름을 Enroll로 바꾸었습니다. userform의 이름 뒤에. show를 붙여주세요. 폼의 이름.show 이렇게 하..
워크시트 함수 워크시트의 함수라고 하면 시트에서 사용할 수 있는 함수들을 뜻합니다. 엑셀 시트에서는 수식을 입력해서 결괏값을 구할 수 있습니다. 수식에서 사용하는 함수들을 vb에서 사용해보도록 하겠습니다.\ WorksheetFunction worksheetfunction이라는 함수를 사용하면 sheet에서 사용하는 함수들을 사용할 수 있게 됩니다. 하지만 sheet에서의 작업을 vb에서 하는 것일 뿐입니다. Sub 프로시저() Range("A1").Value = Application.WorksheetFunction.Sum(Range("A2:A4").Value) End Sub 가장 기본적인 sum함수를 사용했습니다. a2셀부터 a4셀에 있는 값을 다 더해서 a1셀에 담아주는 소스코드입니다. 이러한 형식으로..

형 변환 하기 값을 사용하다 보면 값의 type이 원하는 type으로 설정해줄 수 없을 때가 있습니다. 그럴 때 형식을 변환해준다, 즉 type을 변환해주는 것을 형 변환이라고 합니다. CBool Boolean CDate Date CDbl Double CInt Integer CLng Long CStr String Cvar Variant 함수는 이렇게 있습니다. 왼쪽이 함수이고 오른쪽이 반환하는 type입니다. 이 중에서 중요한 몇 가지에 대한 예제를 보면서 이해해보도록 합시다. CLong, CInt 두 함수는 형식이 같습니다. 둘 다 정수형으로 바뀌는 성질을 가지고 있으며 소수점에서 반올림을 합니다. Sub 프로시저() Dim rs1 As Long Dim rs2 As Long rs1 = CLng(12.3..

MsgBox함수 사용하기 제가 포스팅에서 값을 출력할 때 사용했던 Msgbox에 여러 가지 기능에 대해서 알아보는 시간을 가져보도록 하겠습니다. 사실 값을 확인하는 명령어는 Debug.Print라는 명령어가 있습니다. 사용 시 직접 실행 창에 값이 출력됩니다. 이것 또한 유용하니 알아두시는 것을 추천드립니다. 어쨌든 지금까지 값을 확인하기 위해 사용했던 msgbox의 요소들을 알아보도록 합시다. 기본적인 메시지만을 띄울 때 사용방법입니다. MsgBox 문자열 문자열 사이에 변수 또는 함수의 반환 값을 넣고 싶다면 "&"를 사용하시면 됩니다. MsgBox "문자열" & 변수 & "문자열" 이렇게 말이죠. vbYesNo 평소에도 많이 보시는 형태입니다. 버튼 2개, Yes or No로 구성된 형태이죠. Su..