모바일 다음에서 뉴스기사를 검색하면 아래와 같은 URL로 접속됩니다.https://m.search.daum.net/search?w=news&q=인공지능최대한 간단히 줄인 주소입니다.PC웹에서 검색해도 비슷한데 효율성을 위해서 모바일 검색을 기준으로 알아봅니다. 다음에서 검색에 대한 API를 제공하지만 신문사를 조건으로 검색하는 등의 상세한 기능은 지원하지 않아 Http문서를 크롤링하는 방법을 이용합니다. 검색 결과 형태는 아래와 같습니다. HTML 구조를 살펴보면 아래와 같습니다.주황색 네모 영역이 기사제목이고 파란색 네모가 제목내용이 들어 있는 태그입니다. 태그의 여러 정보를 가져올 때 GetElementsByClassName 이나 GetElementsById 등을 이용할 수 있는데여기서는 Query..
XLS+VBA 검색 결과
관련: 지식인1, 지식인2 이번 미션은 엑셀에서 시트이름이 '양면3'이면 양면 3부 인쇄, '단면1'이면 단면 1부로 모든 엑셀 시트를 한꺼번에 일괄 인쇄하는 것입니다. VBA로 원하는 인쇄 매수대로 인쇄하는 것은 쉬우나양면 인쇄는 VBA로도 설정하기 까다롭습니다.한 가지 방법은 프린터를 하나 더 추가한 다음 양면으로 설정하고단면일 때는 프린터1을 현재 프린터(ActivePrinter)로 설정하고양면일 때는 프린터2를 현재 프린터(ActivePrinter)로 설정하는 방법이 있습니다. 여기서는 이 방법대신 새로운 프린터를 설정할 필요 없이 API를 이용해서 그때마다 양면/단면을 설정해서 인쇄하는 방법을 모색합니다. 아래와 같은 코드를 참고하였습니다. VBA7 환경(오피스2010이상)https://..
365 버전에는 엑셀 셀에 체크박스 즉, 확인란을 넣는 기능이 생겼습니다. 이 체크박스(Checkbox in Cell)은 365사용자만 이용할 수 있습니다. True/False값을 가지고 있어 수식에 활용할 수 있습니다. 😎 다양한 활용방법 유튜브 링크 이 새로운 체크박스는 Range Object 에 CellControl 개체에 속합니다. VBA로 이 새로운 체크박스를 체크 혹은 해제하거나 새롭게 추가하거나 삭제하려면 아래 코드를 참고하세요.더보기 'new CellControl Types in M365Const xlTypeCheckbox = 2Const xlTypeNone = 0Const xlTypeUnknown = 1Sub TickOffAll() Dim rng As Range ..
첨부파일에서 마우스 우클릭을 하면 Get Gemini Selected 와 Get Gemini All 메뉴가 뜹니다. Get Gemini Selected 는 현재 선택된 셀들에 대해 구글 Gemini 에게 [B1]셀에 주어진 프롬프트를 이용해서 명령을 보내서 돌아온 다시 쓴 문장을 원래 셀 오른쪽에 가져옵니다. Get Gemini All 은 B열에서 B1을 제외한 모든 B:B셀의 문장에 대해 [B1]의 프롬프트 명령을 실행해서 답변 결과를 각 셀의 오른쪽에 가져옵니다. 먼저 구글 API가 필요합니다. API 키 가져오기 | Google AI Studio 위 사이트에 자신의 구글 계정으로 로그인해서 'API 키 만들기'를 클릭하여 API 키를 생성하고 복사합니다.AIza~로 시작하는 40자리 알파..
365 엑셀의 새기능인 셀안의 그림(PictureInCell) 기능입니다.마치 아래 한/글에서 그림을 글자 취급하는 것처럼엑셀 시트에서 그림을 셀안에 종속적으로 삽입할 수 있습니다.글자처럼 간주되어 정렬도 가능합니다. 우클릭해서 '셀 위에 놓기'를 선택해서 일반 그림으로 변경할 수도 있습니다. 반대로 일반 그림을 '셀에 배치'를 선택해서 '셀안의그림'으로 바꿀 수도 있습니다. 셀에서 사용자 함수인 Image 를 이용할 수 있습니다.=IMAGE(source, [alt_text], [sizing], [height], [width]) 세번째 인수:0 이미지를 셀에 맞추고 가로 세로 비율을 유지합니다. 1 셀을 이미지로 채우고 가로 세로 비율을 무시합니다. 2 셀 경계를 초과할 수..
Dictionary 를 이용해서 단어의 빈도수 통계를 내볼 수 있습니다.Sheet1 에 아래와 같이 텍스트가 들어 있습니다.Alt+F8로 CountWords 매크로를 실행하면 아래처럼 각 단어의 빈도수를 Sheet2 에 알려줍니다.코드는 아래와 같습니다.Alt+F11 창 도구 > 참조에서 Microsoft SCripting Runtime 라이브러리를 체크해주세요.더보기Option ExplicitSub CountWords() Dim sht1 As Worksheet, sht2 As Worksheet Dim rng As Range '도구-참조에서 Microsoft Scripting Runtime 체크 필수 Dim d As Dictionary 'Dim d as Object ..
예를 들어 당근 사이트처럼 이미 UTF-8인코딩인 경우 WinHttp 로 HTML 문서 내용을 가져오면인코딩이 깨집니다. 이런 경우 인코딩 오류를 예방하거나 처리하는 방법을 소개합니다. 인코딩이 깨질 때첫번째 방법: WinHttp 대신 XMLHttp 혹은 ServerXMLHttp를 이용해서 접속하기아래는 Late Binding이지만 Early Binding하려면 도구 > 참조에서 XML 6.0 등의 라이브러리를 추가합니다.Function GetDocumentByURL(URL) Set winhttp = CreateObject("MSXML2.XmlHttp") Set document = CreateObject("Htmlfile") winhttp.Open "GET", URL, False..
위처럼 의료기기를 검색하는 사이트( https://emedi.mfds.go.kr/portal )의 검색결과를 엑셀로 가져오는 예시입니다. 여러가지 항목으로 검색할 수 있는데일단 명칭(query2)과 업체명(entpName) 으로 검색하는 예시 파일을 만들어 보았습니다. 첨부파일 매크로 허용해서 열고명칭이나 업체명을 입력하고 시작페이지 ~ 마지막 페이지를 입력하고마우스 우클릭해서 getMed 를 실행합니다.위와 같이 화면입니다.내부적으로 xmlHttp를 이용해서https://emedi.mfds.go.kr/search/data/list?chkList=1&nowPageNum=1&tabGubun=1&query2=브러쉬&entpName=신원&chkGroup=GROUP_BY_FIELD_01&pageNum=1&se..
최근댓글