본문 바로가기

VBA271

[VBA_ArrayList] ArrayList를 통한 중복값 제거 후 정렬하기 내가 공부해 본 바로는 배열안에서 Arraylist만큼 편하게 정렬을 도와주는 것은 없는거 같다. 보통 정렬이라고 하면 일명 버블정렬이라고 하여 근접한 두개를 서로 비교하며 정렬하는게 표준으로 사용한다. 오늘 소개할 ArrayList의 매소드는 이러하다. 여기서 보통 Add,Clear,Contains,toArray,Sort 등이 많이 사용되는데 Add,Sort만 사용해도 충분히 활용이 높다. ArrayList를 소개하기 위해 준비한 예제는 다음과 같다. List에는 정렬해야 하는 대상들이 있으며, 각 리스트별로 중복된 값들이 있는데 이를 제거하고 정렬하는 코드를 작성할때 [ Contains ] 매소드로 기존에 이미 Add된 값들을 판별하여 중복값을 제외할 수 있으므로 실무에 유용하게 사용하기 바란다. A.. 2021. 8. 18.
[VBA_재귀함수] 모든 경우의 수 순열구하기 VBA를 배우는 것중 또 하나는 알고리즘을 하나둘씩 배워가는 즐거움이 있다. 최근에 가장 좋아하는 알고리즘으로는 재귀문인데 문제를 접할 때마다 풀기 싫지만 풀면 뿌듯한 뭐 이런 이상한 기분을 주는 녀석이다. 이걸 풀기 위해서 알고리즘 관련한 사이트와 블로그를 열심히 찾아본 결과 드디어 이해를 하였기에 코드를 올린다. 재귀함수는 호출을 하기전으로 돌아오기 때문에 종료구문을 넣어주지 않으면 무한 루프에 빠질 수가 있다. 본 알고리즘은 공백과 문자가 있는 두개의 영역에서 처음 문자가 있는 영역에서 문자가 없는 영역으로 자리를 바꿔준 다음 더이상 바꿔줄 문자가 없으면 다시 처음으로 돌아와서 문자가 없는 영역과 문자가 있는 영역으로 회기해서 위치를 바꿔주는 것이 관건이다. 이건 말로 풀기에는 한계가 있고 [F8].. 2021. 8. 17.
[VBA_STRCONV] 문자열 함수 오늘은 StrConv에 대해서 이야기를 해보려고 한다. 문자열을 재가공하거나 문자열 내에서 어떤 값을 찾거나 할때 가장 많이 쓰는 함수는 MID 함수나 INSTR함수이다. 또한 찾고자 하는 값이 문자열 내에 존재하는지도 알아보기 위해서도 쉽게 많이 사용되며 더 나아가 웹크롤링을 할때에도 많이 사용하게 된다. 개인적으로 문자열 함수를 자유자재로 사용하기 위해서 개인적으로 공부를 좀 했던것 같다. VBA 사용 목적이 결국 반복되는 엑셀의 피곤함을 줄이기 위함인지라 크게 반복문과 조건문 안에서 얼마나 효율적으로 원하는 결과를 가져오는냐가 잘만든 프로그램이라고 생각하기에 반복문 역시도 두세번 넘어가는 구문에 대해서는 체질적으로 경기(?)를 일으키는 편이라 또 다른 쾌락(?)을 느끼는 함수나 구문을 추구한다. S.. 2021. 8. 17.
[VBA_재귀함수] 모든 조합 나열하기 재귀함수로 [구구단] 만들기도 그렇고 [모든 조합 나열하기]도 그렇고 재귀함수를 적용하기에는 적당한 예제가 아닌것 같네요. 재귀적 사고가 아직은 제길 수준인듯 다음 주 월요일까지는 주석없이 시간 날때 마다 적은 후 블로그를 올려야 겠네요...부모님댁에 와서 여러가지로 코드 짜기가 불편해서...간만에 우리 엄마한테 어리광 좀 부려야겠어요 2021. 8. 13.