nØthing specia¡
Posts
129 posts
VBA가 루프없이 연산하는 썰
얼마 전 Stackoverflow에 VBA: Is there a way to apply a single formula to a column without looping through each cell라는 질문이 올라왔는데, 심심하면 VBA의 한계를 건들려보던 차라 이 질문을 모른 척하고 지나갈 수 없었다. I'm quite new in VBA and was looking for ways on how to apply the same formula to all cells in a column. I have 5000 rows and I would simply like to multiply row values in Column 1 with row values in Column 2 and show the r

numpy의 matrix slicing
numpy는 그 자체도 훌륭하지만 scipy나 pandas와 같은 훌륭한 라이브러리가 탄생할 수 있는 배경이 되어 더욱 값진 존재이다. 그런데 numpy의 matrix를 다룰 때, 더 정확히 sub matrix를 다룰 때 주의할 점이 하나 있다. 그냥 아래의 코드를 보면 뭘 주의해야 하는 지 알 수 있다. import numpy as np mat = np.array([[11,12,13],[21,22,23],[31,32,33]]) print("Original matrix") print(mat) mat_slice = mat[:2,:2] # Simple indexing print ("\nSliced matrix") print(mat_slice) print ("\nChange the slice
OnTime으로 매크로 호출하려니 눈이 고생하네요
욕하면서 사용하는 것중 하나가 개떡같은 VBA . VB 버리고 VB.net으로 가면 좋으련만 레거시코드 때문에 그러는지 낡고 낡은 VB를 계속 사용하는 이유를 모르겠다. OnTime으로 얼마간의 시간후에 또는 특정시간에 프로시저를 호출하는 건 좋은데(그닥 쓸일은 없지만) 프로시저에 매개변수를 던져주려면 매개변수 주변에 더블쿼트와 싱글쿼트를 섞어 사용하느라 눈이 돌아갈 지경이다. Dummy(str As String) 이라는 Sub프로시저에 str 변수를 던져주는 게 str = "Jim" Application.OnTime Now() + TimeSerial(0, 0, 5), "'Dummy""" + str + """'" OnTime의 Procedure 매개변수에 넘겨주는 프로시

업데이트 대화상자 죽이기
엑셀을 사용하다보면 데이터관리를 위해 별도의 파일로 분리하고, 이 파일을 참조하도록 하는 경우가 생긴다. 그래서 파일을 열때 마다 위의 업데이트 경고 대화상자를 만나게 되는데, VBA로 파일을 여는 경우 이런 대화상자가 성가실 수 있다. 달랑 하나 여는 것이라면 그리 성가실 건 아니지만... Workbooks.Open "C:\Users\timebird\Downloads\noname.xlsx" 엑셀 옵션에는 이를 제어하는 옵션이 있는 데, [고급]-[일반]-[자동 연결 업데이트 확인]이 바로 그것이다. 외부 컨텐츠와 관련한 몇 가지 옵션이 있는 데, [보안 센터]-[보안 센터 설정]-[외부 콘텐츠]-[데이터 연결 모두 사용(권장하지 않음)]/[모든 통합 문서 링크 자동 업데이트 사용(권장하지
