엑셀 vba

엑셀 vba/발주관리

매출처 관리 #3 유저폼 버튼별 코드

지난 포스팅에서 만들었던 매출처 관리 유저폼의 각 버튼별 코드를 이번 포스팅에서는 다루겠습니다. 등록, 수정, 삭제, 닫기 총 4개의 버튼이 있습니다. 등록, 수정 버튼을 클릭했을시 유저폼을 하나더 팝업시켜 사용하는 방식으로 데이터를 추가/수정합니다. 사용할 유저폼은 FormEditClient로 이름을 설정했습니다. FormEditClient 유저폼은 다음 포스팅에서 다루도록 하겠습니다. 우측상단의 txtIdx 텍스트 박스는 Visible을 False로 설정해서 보이지 않게 숨겨주었습니다. 먼저 등록 버튼 클릭시 실행되는 코드 입니다. '등록 Private Sub btnRegister_Click() With FormEditClient .Caption = "매출처 등록" .Show End With Call..

엑셀 vba/발주관리

매출처 관리 #2 매출처 관리 유저폼 만들기

이번 포스팅에서는 매출처 관리 유저폼을 만들어 보겠습니다. 기본 레이아웃은 아래의 그림과 같습니다. 검색은 텍스트 박스, 우측 상단에 텍스트 박스는 리스트뷰 선택시 선택한 idx를 넣어둘 텍스트 박스입니다. 매입처 관리 유저폼과 마찬가지로 리스트뷰를 사용했습니다. 아래의 등록, 수정, 삭제, 닫기의 4개 버튼은 레이블 컨트롤을 사용합니다. 다음은 유저폼 코드입니다. 먼저 유저폼이 실행되었을때 처리되는 코드 입니다. Option Explicit '폼 열릴때 실행 Private Sub UserForm_Initialize() Call SetColumnHeaders Call Connect_DB Call Load_Client_DB Cn.Close Me.txtSearch.SetFocus End Sub 리스트뷰의 헤..

엑셀 vba/발주관리

매출처 관리 #1 테이블 만들기

이번 포스팅부터 매출처 관리를 시작합니다. 우선은 DB에 테이블을 생성합니다. 테이블명은 client로 각 항목은 idx(일련번호), clientName(매출처명), licenseNumber(사업자등록번호), address(주소), businessConditions(업종), businessCategory(업태) 총 6개의 항목으로 구성했습니다. 아마 차후에 추가될 항목도 있을 예정입니다. idx는 PRIMARY KEY를 설정해 주고, 기본값으로 AUTO_INCREMENT를 설정해 자동증가하도록 해줍니다. idx는 INT형으로, 나머지는 VARCHAR형으로 설정해주고 길이는 적당히 설정해 주었습니다. clientName를 제외하고 나머지는 NULL허용, 기본값 NULL입니다. 다음 포스팅부터는 매출처 관리..

엑셀 vba/실시간 경락 정보

실시간 경락 정보 #4 OpenAPI 교체

사용하던 OpenAPI가 법인지정 없이 전체검색을 했을때 send에서 시간이 너무 많이 걸려서 다른 OpenAPI가 없나 찾아보니 조금더 최신의 OpenAPI가 있어서 그걸로 교체했습니다. 데이터 이름은 '전국 도매시장 일별 실시간 경락가격 상세정보(법인사용코드포함)' 입니다. 근데 이게 검색을 하면 등록일이 2018년 1월 8일 등록으로 나오고, 원래 사용하던 OpenAPI는 2015년 11월 17일이 등록일로 나오는데 상세페이지로 들어가보면 등록일이 2014년 10월 24일과 2015년 11월 10일로 다르게 나옵니다.이부분은 어떤게 정확한건지 사실 모르겠습니다. 아무튼 테스트해본 결과 send를 했을때 걸리는 시간이 월등히 이쪽이 빨라서 교체를 결정했습니다. 서론이 길었네요. 교체할 OpenAPI의..

엑셀 vba/실시간 경락 정보

실시간 경락 정보 #3 데이터 가공 & 표시

지난 포스팅에서 OpenAPI를 이용해서 실시간 경락 정보를 가져오는 코드를 만들었습니다. 이번 포스팅에서는 불러온 데이터 중에서 필요한 내용만 가공해서 엑셀 시트로 뿌려주는 작업을 하겠습니다. 우선 원하는 데이터를 뽑기 위해서 요청변수를 알아야 합니다. 이부분은 공공데이터의 정보에서 확인할수 있습니다. 공공데이터의 원천실시간경락가격도매시장목록조회의 상세페이지로 이동한뒤 요청변수 탭에서 확인 가능합니다. data.mafra.go.kr/opendata/data/indexOpenDataDetail.do?data_id=20151117000000000537&service_ty=O 원천실시간경락가격도매시장목록조회 전국 도매시장에서 거래되는 농산물, 수산물, 축산물의 경매낙찰가격과 거래되는 상품들에 대한 정산 거래..

엑셀 vba/실시간 경락 정보

실시간 경락 정보 #2 OpenAPI를 이용한 경락 정보 불러오기

지난 포스팅에서 공공데이터 포털에 가입을 하고 OpenAPI 사용신청까지 했습니다. cookiexcel.tistory.com/29 실시간 경락 정보 #1 오픈 API 신청하기 갑자기 뜬금없긴한데 경락가격 정보를 엑셀에서 바로 쓸수 있으면 좋겠다 싶어 만들어볼 생각입니다. 이후에 발주/매입매출 관리쪽으로 같이 넣어서 사용해도 괜찮을것 같아서 열심히 구글링 cookiexcel.tistory.com 이번 포스팅에서는 신청한 OpenAPI를 이용해 엑셀 시트에 실시간 경락 정보를 불러와 보도록 하겠습니다. 정보를 불러오는 코드는 2가지 방법을 사용해 보겠습니다. 우선 첫번째 방법은 xml로 불러와서 각각의 노드값을 셀로 뿌려주는 방식입니다. Sub CallOpenAPI() Dim strURL As String ..

엑셀 vba/실시간 경락 정보

실시간 경락 정보 #1 오픈 API 신청하기

갑자기 뜬금없긴한데 경락가격 정보를 엑셀에서 바로 쓸수 있으면 좋겠다 싶어 만들어볼 생각입니다. 이후에 발주/매입매출 관리쪽으로 같이 넣어서 사용해도 괜찮을것 같아서 열심히 구글링 해서 만들어 보고 있습니다. 이번 포스팅은 우선적으로 경락 가격 정보를 가져올수있는 API가 있어서 그걸 먼저 알아보도록 하겠습니다. 우선은 농림축산식품 공공데이터포털(이후 공공데이터라 칭하겠습니다.)에서 회원가입을 해야합니다. data.mafra.go.kr/main.do 농림축산식품 공공데이터 포털 data.mafra.go.kr 또는 농업ON에서도 API 신청은 가능합니다만 결국은 공공데이터 포털에서 가져 오는거라 위의 공공데이터 포털에만 가입하시면 농업ON은 자동으로 가입이 됩니다. www.agrion.kr/portal/m..

엑셀 vba/발주관리

매입처 관리폼 #4 각 버튼의 코드 및 Listview 추가 코드

이번 포스팅은 5개의 버튼 각각의 코드입니다. 버튼은 등록, 수정, 삭제, 초기화, 닫기 이렇게 5개입니다. 우선 등록 버튼은 매입처명, 구분, 발주구분을 입력한뒤 클릭시 DB에 저장(INSERT)하는 코드입니다. '등록 Private Sub btnRegister_Click() If txtPurchase.Value = "" Then MsgBox "매입처명을 입력해 주세요.", vbCritical, "입력오류" Exit Sub End If Call Connect_DB '중복 매입처 체크 SQL = "SELECT * FROM purchase WHERE purchaseName LIKE '" & txtPurchase.Value & "'" rs.CursorLocation = adUseClient '★★★★★★★★..

엑셀 vba/발주관리

매입처 관리폼 #3 Listview 데이터 채우기

이번 포스팅에서는 매입처 관리폼에 만든 Listview에 데이터를 넣는 코드를 작성해 보겠습니다. 먼저 폼이 열릴때 실행되는 코드 입니다. '폼 열릴때 실행 Private Sub UserForm_Initialize() Call SetColumnHeaders Call Load_Purchase_DB Me.txtSearch.SetFocus End Sub Listview의 헤더를 설정해주고, 데이터를 불러온뒤 검색창으로 포커스를 맞춰줍니다. SetColumnHeaders는 Listview의 헤더를 설정해 주는 모듈입니다. 코드는 아래와 같습니다. '리스트뷰 헤더 설정 Private Sub SetColumnHeaders() With Me.ListProduct.ColumnHeaders .Add Text:="번호",..

엑셀 vba/발주관리

매입처 관리폼 #2 테이블 생성

매입처 테이블명은 purchase로 생성했습니다. idx는 일련번호 purchaseName은 매입처명 sorsortation은 구분 orderSortation은 발주구분 이상의 이름으로 테이블을 만들어 주었습니다. idx는 AUTO_INCREMENT를 설정해 주어 자동으로 번호를 부여하도록 만들어 주었어요. idx에 PRIMARY_KEY를 부여해 중복이 없도록 만들어 주었구요. 구분은 발주서 출력시 구분을 위해 만들어 주었고, 발주구분은 납품서 출력시 구분을 위해서 만들어 주었습니다. 아마 당장은 사용하지 않겠지만 차후 사용할 계획입니다.

SweetCookie
'엑셀 vba' 카테고리의 글 목록 (2 Page)