본문 바로가기

36

[VBA_정렬하기] Dictionary + ArrayList 정렬하기 오늘은 엑셀에 Vlookup이 있다면 VBA Dictionary가 있다고 해도 과언이 아니기에 딕셔너리를 다뤄보려고 한다. 확실히 딕셔너리가 퍼포먼스 하기에는 딱인거 같다. 해결과제는 이렇다. 1행부터 1000행까지 데이터가 있다. 각 행에는 1번부터 100번까지 무작위 수가 들어가 있고, 옆에는 그 무작위로 뽑아낸 수에 또다시 1번부터 8번까지 무작위 수를 주어 두수를 곱하여 키값과 아이템 값을 구분지었다 복잡해 보이지만 딕셔너리로 풀면 이건 눈깜짝할이에 값이 출력될 것이다. 딕셔너리 강의는 군더더기 없이 깔끔한 엑사남님 강의가 있으니 딕셔너리를 모르시거나 아직 정립이 안되신 분들은 반드시 한번 꼭 보고 오시길 바란다. https://www.youtube.com/watch?v=DXf7szoq8lM&t=.. 2021. 8. 26.
[VBA_재귀함수] 삼각형 조합하기 이번에 사용될 재귀함수 구문은 입력된 텍스트를 통해서 자기 자신부터 하나씩 조합하여 마지막 전체 텍스트 값을 모두 출력하는 재귀함수 구문이다. 이 구문의 핵심은 이렇다. 재귀는 재귀 호출이 있은 후 스택을 종료할 수 있는 귀속되는 구문이 반드시 있어야 한다. 그 구문이 카운터가 1이냐를 물어본 후 맞다면 이전까지 조합된 문자와 마지막을 결합하는 것이다. 상위 프로시저에서 FOR 문을 통해서 1부터 마지막 텍스트까지 반복하는 구문속에 하위 프로시저를 호출하면 하위 프로시저에서는 재귀함수의 귀속 여부를 따져서 출력을 하거나 아님 재귀구문을 호출하기 위해 변수들을 재 설정하여 호출하게 된다. F8을 누르면서 지역창이나 조사식창을 이용하더라도 따라가다 보면 자꾸 값을 놓치게 될것이다. 막연하게 따라간다면 필히 .. 2021. 8. 23.
[VBA-재귀함수] 목표값찾기 엑사남 오픈챗방에서 질문하신 내용을 약간 수정해서 만들어 보았다. https://open.kakao.com/o/glXWEB3b 유튜브 '엑사남'의 Excel VBA 함께하기 [방암호 : M으로 시작하는 VBA 메세지창 명령어는? 'MsgB**', 힌트 : 6글자, **은 소문자] #엑셀 #excel #VBA #엑사남 open.kakao.com 먼저 이 질문에 답을 하기 위해서는 값이 주어졌을 때 1부터 마지막까지 하나씩 누적하면서 모든수를 결합할 수 있어야 한다. https://1stminokingdom.tistory.com/26 [VBA_재귀함수] 삼각형 조합하기 이번에 사용될 재귀함수 구문은 입력된 텍스트를 통해서 자기 자신부터 하나씩 조합하여 마지막 전체 텍스트 값을 모두 출력하는 재귀함수 구문이다.. 2021. 8. 23.
[VBA_재귀함수] 문제적 남자 문제 풀이 이 문제를 풀기 위해서는 제한적인 방법들을 두면서 문제를 푸는것이 맞을 것이다. 가령 왼쪽과 우측에 모두 맨앞의 숫자는 1이 들어올 수 없다. 또는 나누는 수들은 각 수들의 약수여야 한다. 뭐 이런식의 조건을 주면서 풀어야 한다. 처음엔 이 문제의 답이 단 하나만 있는 줄 알고 문제의 답을 찾기 위해 조여갔다. 어 근데 한개가 아니다. 오기가 생겼다. 얼마나 있을까.. 이걸 모두 찾으려면 1부터 9까지 모든 조합수를 구해서 조합된 수들을 왼쪽합과 오른쪽합을 비교하면서 조건에 해당되는 숫자들만 도출하면 된다는 생각에 이르렀다. 자 그럼 모든 조합의 경우의 수는 어떻게 구할까? https://1stminokingdom.tistory.com/20 [VBA_재귀함수] 모든 경우의 수 순열구하기 VBA를 배우는 .. 2021. 8. 22.