본문 바로가기

vba89

[VBA] 그룹별 합계 구하고 병합하기 (Consolidate vs Sumif) 머리도 식힐 겸 그룹별 합계를 구한 후 병합하는 문제를 풀어보려고 한다. 원래 이런 문제의 정석은 For문을 순환하면서 현재값과 아래값을 서로 비교하면서 값들을 하나씩 증가하다가 현재값과 아래값이 서로 다르면 그때까지 증가된 값으로 병합하는게 정석이다. 이 블로그 자체가 그런 기본 코드를 선호하지 않기에 코드를 약간 꼬아서 만들어 보았다. 문제는 이렇다. 이름과 점수가 무작위로 섞혀있는 상태에서 1. 정렬을 해야한다. 2. 각 그룹을 추출해야 하고 3. 추출한 그룹의 숫자에 맞게 합계를 출력하고 병합하여야 한다. 이번 문제는 Consolidate와 Workbook의 함수인 Sumif로 만들어보았다. Consolidate의 단점은 전에도 말했듯이 이런식으로 Consolidate의 작업 내역들을 임시로 출력.. 2021. 11. 14.
[VBA] 정규식으로 모든 숫자 더하기 정규식 문제를 또 풀어보려고 한다. 결국 정규식은 패턴을 통해서 원하는 값을 뽑거나 변화시키는 작업이기 때문에 얼마나 정확하게 패턴을 일치시키고, 도출된 값을 어떻게 가공하냐에 달려있다.. 문제에는 알파벳과 숫자, 특수기호가 무작위로 섞여있고, 그속에 숫자들만 찾아내서 그것들을 더하는 작업을 해야 하는것이다. 숫자는 \d 이고 한자리 숫자부터 여러자리의 숫자도 있을 수 있으니 패턴은 [ "\d+" ] 이다 이렇게 찾아낸 패턴들을 순환하면서 배열에 담고 순환속에서 숫자들을 계속 더한 후 순환문이 종료되면 그걸을 셀에 뿌려주면 되는 작업이다. 정규식 이 강력한 녀석의 세상에 당신을 초대한다. 2021. 11. 12.
[콤보상자] 유효성 검사를 통한 발주서 업데이트 최근 오픈채팅방에 무척 질문사항과 글을 올려주시는 용인_64님의 질문이다. 본인도 요즘 새로운걸 하는거에 대해서 막연한 두려움이 있는데 용인_64님의 글과 학습 태도는 본인을 자극하기에 충분하다. 질문의 요지는 이러하다. 여러개의 시트가 있는데 그 시트를 목차같이 쭉 나오게 해서 그것을 클릭하게 되면 해당 발주서의 양식에 맞게 값들이 도출이 되게 하고 싶은신거 같다... 이런문제가 크게 어렵지않으면서 뽀대가 나는 작업이다. 여기에 체인지 이벤트까지 물리면 그냥 멋찜이.....크윽....답없다...이건 하단을 보면 발주서와 각브랜드 시트가 있고 / 오른쪽 상단을 보면 유효성 검사를 통한 드롭버튼이 있는걸 볼 수 있다. 작업은 이렇게 진행할 예정이다. 1. 각 시트를 순환하면서 발주서 시트가 아니면 시트 이.. 2021. 11. 11.
[VBA] 메모에 사진삽입하기 #1(feat.comment) 우선 이번글은 2번에 나눠서 써야 할것같다. 이유는 이 파일은 실제 본인이 직장에서 사용하려고 만든거라 하나의 프로세스로 끝나는게 아니라 연속적이기 때문에 크게 크게 두부분으로 서술하는게 맞는거 같다. 첫째는 가맹점과 성함 조합으로 매장의 전경사진인지 또는 신분증 사진인지를 구별하여 각 이름에 맞게 위치시키게 될것이며, 둘째는 사진의 파일의 이름을 일괄변경하거나 또는 개별로 변경하게 될것이다. 그래서 오늘은 각자 이름에 맞는 파일을 메모에 사진을 삽입하여 정확한 위치에 위치시키는 것까지만 해보려 한다. 메모에 사진을 삽입한다는것이 낯설지만, 파일을 조합하여 위치시키는 것은 그리 어렵지않기에 메모 부분만 집중해서 보면 될듯하다. FileName 은 강원_동해점 / 최선후를 예를 들면 강원_동해점(최선후_전.. 2021. 10. 19.