VBA280 [기초방] VBA 100제 #41 [ 테이블 정렬하기 ] 이번 41번문제는 표를 간단한 테이블 형태로 변경하는것인데..엑셀을 하는 사람들은 절대로 이러한 41번 형태의 테이블로 data를 작성하면 안된다. 엑셀에서 많이 사용되는 것중하나인 빈셀들을 윗셀의 값을 참조하는 코드는 아래와 같다. rngU.SpecialCells(4).FormulaR1C1 = "=R[-1]C" vtemp = Application.Transpose(rngA(1, -4).Resize(Application.CountIf(rngAll.Columns(2), rngA(1, -3)), 1)) vtemp에서 타임파트중 같은 파트들을 Countif를 통해서 그 크기를 Resise의 행의 크기로 하여 배열화 하면 2차원 배열이 됨으로 이를 Transpose를 통해 1차원 배열로 만든다. 이같은 일련의 .. 2023. 3. 15. [기초방] VBA 100제 #40 [ 가로정렬 ] 이번 문제는 이렇다. 알파벳과 숫자가 섞여있는 것에 알파벳을 삭제 후 가로로 정렬을 해야한다. 2007년 엑셀 이후 버전에서는 가로정렬이 가능하다. 위의 코드를 한줄로 표현하면 이렇다 rngA.Sort rngA.Cells(1), 1, Orientation:=xlLeftToRight 행의 첫 영역을 key로 하여 올림차순으로 왼쪽에서 오른쪽 정렬을 하는 코드이다.. 꼭 가져가기 바란다. 더보기 Sub 기초방40() Dim rngAll As Range: Set rngAll = [c5:l20] Dim rngA As Range rngAll.FormatConditions.Delete '= 기존 조건부서식 삭제 Sheets("문제").[c5:l20].Copy Sheets("결과").[c5] '= 문제 복사 rngA.. 2023. 3. 15. [기초방] VBA 100제 #39 [ 문자조합하기 ] 이번 문제는 characters + 정규식 문제의 확장편 정도로 생각해주면 좋을것 같다. 39번 문제는 [이전] 데이터를 보면 알겠지만 처음을 제외하곤 숫자 뒤에 % 가 4자리씩 순환하고 있는데 이걸 나머지 숫자에도 %을 삽입하라는 문제이다. 39-1은 이웃하지 않은 알파벳과 숫자의 조합으로 조합문자를 만들어 내는 것이다. 39번은 정규식으로 풀려면 패턴을 일치시켜야 하기에 정규식 패턴을 다음과 같이 만들어 보았다. 패턴설명은 뒤에 % 가 없는 숫자를 패턴으로 하는 정규식 패턴이다. firstindex는 일치 패턴의 바로 직전까지를 의미하기 때문에 firstindex + cnt를 함으로서 글자가 삽입되더라도 그 위치를 변경해가면서 결국 의도한대로 패턴과 일치된 숫자들 뒤로 % 를 삽입할 수 있다. Set.. 2023. 3. 14. [심화방] VBA_심화_100제 #11 [ 셀레니움 Astable] 셀레니움으로 추출된 표는 KBO 홈페이지의 데이터를 추출한 내용이다. 웹의 데이터를 크롤링할때 우리는 table 태그 안에 tr태그와 td태그들을 For each 또는 For 순환문으로 적절하게 파씽하면서 크롤링을 해 왔다. 오늘 우리는 셀레니움 매소드 중에 AsTable 로 table 태그안에 데이터를 한번에 가져와서 ToExcel을 이용하여 한방에 셀에 뿌리는 것을 해보도록 하자. 공부할때는 힘들었는데 막상 풀어놓으려고 하니 별거 없다. AsTable을 이용하려면 우선 표 형태의 데이터를 가지고 있는 table태그를 찾아야한다. 표를 감싸고 있는 Table 태그의 Class명이 [tData01 tt] 두개인데 본인은 여기서 tData01을 사용하였다. Dim tbl As WebElement Set t.. 2023. 3. 13. 이전 1 ··· 23 24 25 26 27 28 29 ··· 70 다음