반응형

전체 글 569

여러 가지 조건을 만족하는 값을 찾을 때(2-1) - 사용자 정의 함수(1)

XLookup함수가 뛰어나기는 하지만 Excel 2021 버전이상에서만 사용할 수 있기 때문에 사용자 정의 함수를 만들어 사용하려고 합니다. 만들면서 한 열만 지정하는 경우는 범위로 되고, 열을 &연산자로 연결하면 배열로 돼서 이를 해결하느라 고생 좀 했습니다. 사용자 정의 함수는 추가기능 파일, 확장자 xla(m) 파일에 모아 놓고 사용하는 것이 좋습니다. 그렇지만 설명이므로 모듈에 만드는 것을 기준으로 설명하겠습니다. 1. VBA 에디터 실행 및 모듈 삽입 개발도구 탭이 없다면 파일 - 옵션에서 Excel 옵션 창을 연 후 리본 사용자 지정 메뉴를 선택하고, 개발도구 왼쪽에 체크해야 합니다. 개발 도구 탭을 누른 후 Visual Basic 명령을 눌러 Visual Basic 에디터를 엽니다. 그리고,..

EXCEL - VBA 2023.07.25

여러 가지 조건을 만족하는 값을 찾을 때(1) - VLookup, Index+Match, XLookup함수

1. VLookup 함수의 한계 VLookup 함수의 구문은 VLOOKUP(찾을 값, 표 범위, 몇 번째 컬럼, [유사일치여부]) 인데, 네번째 인수는 선택적 인수이지만 생략하면 유사값을 찾아 반환하므로 정확한 값을 찾도록 0을 입력하거나 False를 선택해야 합니다. 아래와 같이 나라별, 연도별 인구수를 구하고자 할 때 나라와 연도 2가지 조건을 만족해야 하는데 VLookup함수로는 에러가 발생해서 C2셀의 수식 : =VLOOKUP(A2&B2,$F$2:$F$7&$G$2:$G$7&$H$2:$H$7,3,0) C3셀의 수식 : =VLOOKUP(A3&B3,$F$2:$H$7,3,0) 2. Index + Match 함수 Index와 Match 함수를 결합해서 구해야 하며, 365버전이 아니라면 Shift+Ctrl..

Excel 2023.07.24

본인 인증을 우회하기 위한 팁

1. 카카오 내비 세컨 폰에서 카카오 내비를 사용하려고 '카카오계정으로 시작하기'를 누르면 본인 인증을 요구하는데 메인 폰에서 하면 됩니다. 2. GS SHOP 집 사람 폰에서 구매 한 후 내 카드로 결제하려고 했더니 본인 카드가 아니라고 하면서 안되는데, 내 폰에서 GS SHOP에 접속한 후 카드 결제를 하면 문제 없이 잘 됩니다. 3. 테슬라 앱 공장 초기화를 했더니 연결된 구글 Authenticator 정보가 없어져서 구글 Authenticator 앱을 다시 설치해도 번호가 틀리다는 메시지가 나옵니다. 이 때는 테슬라 고객 센터에 전화해서 인증 없이 테슬라 사이트에 접속할 수 있도록 해달라고 요청해야 합니다. 그러나, 구글 Authenticator가 연결되면 다른 폰에 구글 Authenticator..

스마트폰 2023.07.21

텍스트로 된 수식의 값 구하기(4 - 2) - 사용자 정의 함수

텍스트로 된 수식의 값 구하기(4 - 1) - Evaluate 함수에서 VBA의 Evaluate 함수를 이용해 수식의 값을 구할 수 있다는 것을 알았는데, https://lsw3210.tistory.com/entry/%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%A1%9C-%EB%90%9C-%EC%88%98%EC%8B%9D%EC%9D%98-%EA%B0%92-%EA%B5%AC%ED%95%98%EA%B8%B04-1-Evaluate-%ED%95%A8%EC%88%98 직접 실행창에서 매번 실행할 수는 없으므로 사용자 정의 함수를 만들어 사용해야 합니다. 1. VB 에디터 실행 개발도구 - Visual Basic을 눌러 VB Editor를 연 다음 엑셀 파일명을 클릭한 다음 사용자 정의 폼 삽입 옆의 콤..

EXCEL - VBA 2023.07.20

텍스트로 된 수식의 값 구하기(4 - 1) - Evaluate 함수

1. Evaluate 함수 가. 정의 엑셀 이름을 오브젝트 또는 값을 변환합니다(Converts a Microsoft Excel name to an object or a value). 이름(Name)은 수식(Formula)이 될 수도 있고, 셀 주소 또는 범위 등이 될 수도 있습니다. 나. 구문 expression.Evaluate (Name) - expression은 오브젝트를 가르키는 변수로 Application, Book1.xlsx, Sheet1 등이 될 수 있습니다. - Name은 아래와 같이 다양한 형태가 될 수 있는데, VBA 에디터를 실행한 후 직접 실행창에서 간단히 결과를 확인할 수 있습니다. 다. Name의 종류 및 사용 예 Name 사용 예 Formulas 수식으로 텍스트로 된 수식도 가..

EXCEL - VBA 2023.07.19

텍스트로 된 수식의 값 구하기(3) - Let, Switch 함수 이용

1. Let과 Switch 함수 둘 다 Microsoft 365용 Excel, Mac용 Microsoft 365용 Excel, 웹용 Excel , Excel 2021, Mac용 Excel 2021에서만 사용 가능한 최신 함수입니다. 가. Let 함수 (1) 정의 및 구문 Let함수는 이름에 값을 할당해서 계산 후 결과 값을 돌려주는 것으로 계산식을 이름에 할당하고, 다시 계산할 수 있는 유용한 함수이며, 구문은 아래와 같이 이름, 값, 계산식 또는 이름2 식을 여러 번 지정할 수 있으며, 마지막 인수는 반드시 계산식으로 끝나야 합니다. =LET(name1, name_value1, calculation_or_name2, [name_value2, calculation_or_name3...]) (2) 사용 예..

Excel 2023.07.18

텍스트로 된 수식의 값 구하기(2) - 사칙 연산자 적용

"텍스트로 된 수식의 값 구하기(1)"에서는 곱하기만을 다뤘는데, https://lsw3210.tistory.com/entry/%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%A1%9C-%EB%90%9C-%EC%88%98%EC%8B%9D%EC%9D%98-%EA%B0%92-%EA%B5%AC%ED%95%98%EA%B8%B01-%EA%B3%B1%ED%95%98%EA%B8%B0%EB%A7%8C 이번에는 *뿐만 아니라 +, /, - 등 사칙 연산을 제대로 계산해서 값을 구하는 것을 구현해 보겠습니다. 1. 연산자 위치 알아내기 "텍스트로 된 수식의 값 구하기(1)"에서도 연산자인 *의 위치를 =find("*",a3) 수식을 이용해 구했으나, 사칙 연산 기호가 모두 적용돼야 하므로 위 수식을 수정해야 합니다..

Excel 2023.07.17

텍스트로 된 수식의 값 구하기(1) - 곱하기만

아래와 같이 텍스트로 된 수식의 값을 구해보겠습니다. 1. 한자릿수 곱하기숫자1*숫자2에서 숫자 1이 1자리로 고정된 경우는 Left함수와 Mid함수를 이용해 값을 구할 수 있습니다. Left 함수의 구문은 Left(텍스트, 가져올 문자수)이며, Mid함수의 구문은 Mid(텍스트, 시작 위치, 가져올 문자의 개수)입니다. 따라서, D2셀에 A3셀의 수식의 값을 구하는 수식을 =LEFT(A3,1)*MID(A3,3,10)라고 입력하면 됩니다.위 수식에서 LEFT(A3,1)은 A3셀에서 왼쪽 한 글자를 가져오는 것이므로 1이 되고, MID(A3,3,10)은 A3셀에서 세 번째 위치부터 10개의 문자를 가져오라는 의미인데, A3셀을 보면 * 다음에 숫자 2만 있으므로 10이 아니라 1이라고 해도 되지만, 10이..

EXCEL - VBA 2023.07.16

RandArray 함수

1. 정의 최솟값과 최댓값 사이의 정수 또는 실수를 지정된 행과 열의 크기의 배열로 반환하는 것입니다. 2. 구문 =RANDARRAY([rows],[columns],[min],[max],[whole_number]) 인수가 5개 있는데, 대괄호 사이에 있으므로 모두 선택사항입니다. 인수명 설명 기본값 rows 배열의 크기를 나타내는 행 수 1 columns 배열의 크기를 나타내는 열 수 1 min 최소값. RandBetween 함수에서는 하한(bottom) 용어 사용 0 max 최대값. RandBetween 함수에서는 상한(top) 용어 사용 1 whole number (정수) 정수인지 여부 - Rand 함수는 실수(Real Number)란 용어 사용 - RandBetween 함수는 정수(integer)란..

Excel 2023.07.15

RandBetween 함수

1. 정의 지정한 두 수 사이의 정수를 반환합니다. 구분 Rand 함수 RandBetween 함수 정의 0이상 1미만의 실수 반환 지정한 두 수 사이의 정수 반환 차이점 o 1은 포함되지 않음(미만) o 실수 반환 o 상한을 포함(이하) o 정수 반환 2. 구문 RANDBETWEEN(하한, 상한) - RandBetween 다음에 반환할 값의 가장 작은 값(하한)과 가장 큰 값(상한)을 넣습니다. - Microsoft 사이트의 도움말에는 정수로 입력하라고 되어 있는데 실수를 입력해도 됩니다. 이럴 때 상한 이하의 정수를 반환해야 하므로 99를 입력한 것과 같습니다. - 하한과 상한에 입력할 값의 위치를 바꾸면, 다시 말해 하한에 큰 수, 상한에 작은 수를 입력하면 #NUM! 에러가 발생합니다. - 정수이므..

Excel 2023.07.14
반응형