VBA/엑사남_기초방93 [기초방] VBA 100제 #24 [ 멀티 필터링 ] 이번 문제는 본인이 의뢰받은 일중에서 계속적으로 필터링을 해야 하는데 그때마다 필터의 설정 / 해제를 해준는것이 불편하여 사용하고 있던 필터링 문제를 착안하여 문제를 만들어 보았다. 역시 사용된 것은 이벤트 구문 + 필터링으로 노력한거에 비해 뽀대(?) 뿜뿜인 녀석이다. 실무에 활용하기 바란다. 기초방 구문은 익숙하지가 않아서 그렇지 그 원리를 알면 코드를 이해하거나 활용에 대해서는 각자의 코딩 지식 수준에 따라 그 스펙트럼이 충분히 더 넓어지리라 예상한다. 구문 진행은 이렇다. 더블클릭이벤트로 영역안에서 더블 클릭하면 자동 필터가 설정 또는 해제된다. 체인지 이벤트는 이벤트 구간의 값의 변화에 따라 포함 / 일치 / 이상 / 이상 순으로 체인지 이벤트를 설정하였다. On Error Resume Next.. 2023. 2. 1. [기초방] VBA 100제 #23 [ 제품 나열하기 ] 원래는 21번 문제였는데 노화로 인한 초기 치매인지 문제를 낸 지도 몰라서 23번으로 올린다. 같은 크루분들께 죄송하다. 이번 문제는 [ 제품 : 과일,라면,음료 ] 이러한 형태의 제품구성에서 제품의 각각의 아이템을 제품 : 아이템1 / 제품 : 아이템2 이런식을 파싱하여 조합하는 형태이다. 보통 이런 경우는 [제품 : ]을 Replace로 없애주고 남아있는 아이템들을 콤마로 Split하여 각각을 조합하면 된다. 본인은 이번구문에서 패턴에서 [제품 : ] 을 배제한 Match 값들을 순환하면서 조합하는 형태로 문제를 풀어보려고 한다. 패턴을 설명하면 제/품/공백/콜론/콤마가 아닌 다수의 문자를 선택하라는 뜻이다. 여기서 주의할것은 만일 제품 아이템에 [ 제 또는 품 ] 문자가 들어가면 추출이 불가해진다... 2023. 1. 31. [기초방] VBA 100제 #22 [ 부서별최대값구하기 ] 부서별 인사평가가 가장 높은 사람들을 출력하는 문제이다. 보통 이러한 문제는 Max함수를 이용하여 풀면 되니까. max함수를 배열 수식으로 풀면 된다. 그러면 여기서 문제가 있다. 엑셀 함수로는 Ctrl + Shift + Enter를 눌러서 배열수식을 완성하면 되는데 이걸 VBA로 어떻게 표기하냐가 달렸다. 기초방 21번 문제에 사용되었던 Sumifs는 값을 배열로 반환을 하여서 21번 문제 같은 경우에 유용하게 사용되었지만 2019년 이전버전에는 사용할 수 없어 이번에는 2010 버전에도 사용할 수 있는 Max함수로 풀어보려고 한다. Sumifs와 함께 Maxifs로 풀면 역시 배열로 반환하기 때문에 좀 더 쉽게 풀 수 있다. 시훈아빠의 문제 풀이를 소개한다. 무지님의 함수식 풀이도 함께 올린다. 다시.. 2023. 1. 30. [기초방] VBA 100제 #21 [ 반별 총점/평균 구하기 ] 과목의 총점 평균 구하기는 엑셀을 시작하면서 늘 반복적으로 해왔던 일이었으리라... 그래서 이러한 문제는 수식을 이용해서 풀어나가는게 맞다고 본다. 같은 방 크루인 무지님의 코드이다. 수식으로 풀고 마지막에 수식을 값으로 변경하는 코드를 사용하였다. 수식으로 풀면서 좋은건 영역을 선택한 후 수식을 입력하게 되면 영역을 순환하지 않고 바로 그 영역에 수식이 들어감으로 코드가 훨씬 짧아진다. 무지님의 코드에 사용된 Sumifs 와 본인의 코드인 Application.Sumifs와의 사용을 비교하여 보길 바란다. 엑사남님은 늘 말한다. VBA에 전에 엑셀함수라고 항상 기본에 충실하자... 그래도 이건 아니지 않니??? 모~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.. 2023. 1. 26. 이전 1 ··· 16 17 18 19 20 21 22 ··· 24 다음