본문 바로가기

Excel VBA/VBA 예제

(25)
고급필터 예제, 해당 시트 존재 여부 알려주는 function 고급필터 예제 Sub advancedFilter(db시트명, filter시트명) filter시트columns = Sheets(filter시트명).Range("a1").CurrentRegion.Columns.Count filter_column_name_addr = Sheets(filter시트명).Range(Sheets(filter시트명).Cells(8, 1), Sheets(filter시트명).Cells(8, filter시트columns)).Address Sheets(db시트명).Range("A1").CurrentRegion.advancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Sheets(filter시트명).Range("A1").CurrentRegion, Copy..
구글 스프레드시트 세로값 펼치기 =TRANSPOSE(INDIRECT("D"&((row(E9)-8)*10)&":D"&((row(E9)-8)*10)+9)) https://docs.google.com/spreadsheets/d/19jkZJda4X8eXbIZWVzaIC-qyxT6Zt7kEO6JWMMcWdhk/edit?usp=sharing 세로를 가로로 시트1 1,d=1,d=1,이로케 한담에 2,d=2,d=2,값붙여넣기 3,d=3,d=3 살인발생,살인검거,강도발생,강도검거,강간발행,강간검거,절도발생,절도검거,폭력발생,폭력검거 관서명,죄종,발생검거,건수,0,0,6,6,173,87,1061,489,1198,1024 중부,살인,발생,0,5,3,5,4,131,103,910,360,1220,1059 중부,살인,검거,0,1,0,3,3,94,62,785,4..
excel vba function 예제 - 사칙연산, 시트개수 세기 123456789101112131415161718192021222324252627Sub main_function() Cells.Clear result = plus(10, 20) result2 = minus(10, 20) result3 = multiple(10, 20) result4 = divide(10, 20) Range("a1").Value = result Range("a2").Value = result2 Range("a3").Value = result3 Range("a4").Value = result4End Sub Function plus(val1, val2) plus = val1 + val2End Function Function minus(val1, val2) minus = val1 - val2En..
열개수 숫자를 알파벳으로 ex)27 -> AA 열개수 숫자를 알파벳으로 ex)27 -> AA 123456789Function getColumunAddress(p_colno) getColumunAddress = Split(Cells(, p_colno).Address, "$")(1)End Function Sub testGetColumnAddress() 컬럼숫자 = 27 result = getColumunAddress(컬럼숫자) MsgBox (result)End SubColored by Color Scriptercs 결과 end.
excel vba 날짜 다루기 now, string -> dateObject date add Sub datetimeNow() Date2 = DateTime.DateValue(DateTime.Now) Debug.Print (Date2) dateString = "20180619" dateObjct = DateSerial(CInt(Left(dateString, 4)), CInt(Mid(dateString, 5, 2)), CInt(Right(dateString, 2))) Debug.Print (dateObject) End Sub ​ 현재 날짜와 지정한 날짜의 차의를 계산 하고 싶을 때 1.현재 날짜를 dateObject로 만들어야 하고 2.원하는 날짜를 dateObject로 만들어서 그 차이를 계산 해야 한다. 그게 1번과 2번이다. Sub test1() res = calculateDay("2019-0..
excel vba regexp vba에서도 정규식을 쓸 일이 있어서 찾아보았습니다. Sub regexp_test() str1 = "system(bla/bla2)" str2 = "()" result = getInnerBracketText(str1) Debug.Print (getInnerBracketText(str1)) Debug.Print (getInnerBracketText(str2)) End Sub Function getInnerBracketText(str) As String occurOpenBracket = InStr(str, "(") occurCloseBracket = InStr(str, ")") If occurOpenBracket
excel vba array, redim예제 excel vba array, redim예제 1234567891011121314151617181920212223242526272829303132Function get제품명(브랜드명) Sheets("filter_제품코드제품명").Range("a2:e7").ClearContents Sheets("filter_제품코드제품명").Range("d2").Value = 브랜드명 Call advancedFilter("제품코드제품명", "filter_제품코드제품명") 행개수 = Sheets("filter_제품코드제품명").Range("a8").CurrentRegion.Rows.Count - 1 Dim 데이터개수 As Integer 데이터개수 = 행개수 - 1 Dim ar() As String ReDim ar(데이터개수)..
excel vba 차트 이동하기 ActiveChart.Parent.top = 200ActiveChart.Parent.Left = 200 차트를 위에서 200피셀 만큼, 왼쪽에서 200픽셀만큼 움직여서 그린다.