[vba]파워포인트에서 자동으로 실행되는 프로시저들

Excerpted from : AutoEvents Add-in for PowerPoint 2000 and later

  1. Sub Auto_Open() – Gets executed immediately after the presentation is opened.
  2. Sub Auto_Close() – Gets executed prior to the presentation is closed.
  3. Sub Auto_Print() – Gets executed prior to the presentation being printed.
  4. Sub Auto_ShowBegin() – Gets executed when the show begins.
  5. Sub Auto_ShowEnd() – Gets executed when the show ends.
  6. Sub Auto_NextSlide(Index as Long) – Gets executed before the slideshow moves onto the next slide.

[vb.net]Programming on Mac -1

[Problem]
– 기존의 모든 vb파일에서 한글부분을 알아볼 수 없다.
– 소위 ‘한글이 깨졌다’

[Cause]
– 기존의 vb파일들이 모두 한글윈도에서 작성된 것이라 모두 cp949로 인코딩(encoding)되어있다.

[Solution]
– 맥 안에 있는 iconv 명령어를 이용하여 인코딩을 변환하여야 한다.

convert.sh을 다음과 같이 작성한다.

[Reference]
https://gist.github.com/akost/2304819
Bash Programming
한글 배시 프로그래밍

[excel]Spreadsheet for Critical Path Method

This is a very simple program for  PERT/CPM.

Features

1) Calculate activity times : Earliest Start Time (EST); Earliest Finish Time (EFT); Latest start time (LST); Latest Finish Time (LFT).
2) Calculate the float times(TF, DF, FF) of each activity : Total Float (TF); Dependant Float(DF); Free Float (FF).
3) Determine Critical Path of activities
4) Draw a Gantt Chart

Sheets of program
1) Manual sheet -> includes user manual and warnings.
2) Input sheet -> has input-data area and calculation button.
3) Gantt Chart sheet

Screenshot

Screenshot of CriticalPath.XLS

Download a file : CriticalPathEng.xls

If you need a korean version file, please click here. (한국어 파일이 필요하면 여기를 누르시오.

[Excel]Solver 활용

[Solver의 원리]
1. Solver Uses Generalized Reduced Gradient Algorithm
2. Design and Use of the Microsoft Excel Solver

 

[Solver의 사용법]
솔버는 여러 가지 용도로 사용할 수 있다. 다음은 여러 영역에서 솔버를 사용한 예이다.
0. https://support.office.com/ko-kr/article/%ED%95%B4-%EC%B0%BE%EA%B8%B0%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EB%AC%B8%EC%A0%9C-%EC%A0%95%EC%9D%98-%EB%B0%8F-%ED%92%80%EA%B8%B0-9ed03c9f-7caf-4d99-bb6d-078f96d1652c
1. Microsoft Excel Solver add-in Examples
2. Quantitative Approaches for Decision Making

 

[VBA 활용]
VBA를 이용해서 직접 솔버를 호출해서 사용할 수도 있다.
1. Creating Visual Basic Macros that Use Microsoft Excel Solver

[VBA]내 코드에서 엑셀 함수를 불러 사용하는 방법

엑셀 함수(정확히는 워크시트 함수)에는 분야별로 많은 함수들이 내장되어 있다. 통계, 공학, 재무, 수학/삼각, 논리 등등 많이 있다. 이것을 내 VBA코드에서 활용할 방법은 없을까?

1) VBA 코드 안에서 풍부한 워크시트 함수를 호출하는 방법

2) A열 전체 중에서 가장 큰 값을 B1에 읽어오기

3) A열 전체 중에서 가장 큰 값을 가진 셀을 활성화하기

[VBA]방정식을 반복법으로 풀기

 e^x - 5 sin x + 1.36 x =0을 반복법으로 풀어라.

먼저, 주어진 식을  x =  g (x)형식으로 변형시킨다.

즉,  x = e^x - 5 sin x + 2.36 x 으로 변형시킨다. 따라서  g(x) = e^x - 5 sin x + 2.36 x 가 된다.

풀어야 할 방정식은 다음과 같다.

[VBA] vector operation

벡터 계산을 위한 구조체 선언

내적 계산하기

벡터의 합

외적

벡터의 크기

벡터의 차를 위한 함수

벡터의 비교

[VBA]데이터 형식

모든 프로그래밍 언어에는 자신들만의 데이터 형식을 갖고 있다.

다음은 엑셀의 도움말에 있는 내용이다.

데이터 형식저장 용량범위
Byte1바이트0부터 255까지
Boolean2바이트True 또는 False
Integer 2바이트-32,768부터 32,767까지
Long
(긴 정수)
4바이트-2,147,483,648부터 2,147,483,647까지
Single
(단정도 부동 소수점)
4바이트-3.402823E38부터 -1.401298E-45까지(음수값). 1.401298E-45부터 3.402823E38까지(양수값)
Double
(배정도 부동 소수점)
8바이트-1.79769313486232E308부터
-4.94065645841247E-324까지(음수값). 4.94065645841247E-324부터 1.79769313486232E308까지(양수값)
Currency
(정수 값 잘림)
8바이트-922,337,203,685,477.5808부터 922,337,203,685,477.5807까지
Decimal14바이트+/-79,228,162,514,264,337,593,543,950,335(소수점 이하 없음);
+/-7.9228162514264337593543950335(숫자의 오른쪽으로부터 28번째); +/-0.0000000000000000000000000001(0이 아닌 최소 숫자)
Date8바이트100년 1월 1일부터 9999년 10월 31까지
Object4바이트모든 개체 참조
String
(가변 길이)
10바이트 +문자열 길이0부터 약 20억까지
String
(고정 길이)
문자열 길이1부터 약 65,400까지
Variant
(숫자)
16바이트Double형 범위 내의 모든 숫자
Variant
(문자)
22바이트 + 문자열 길이변수 길이 String과 같은 범위
사용자 정의 형식
(Type 사용)
요소가 사용하는 숫자해당 데이터 형식의 범위값과 각 요소의 범위값이 같음

메모 모든 데이터 형식의 배열은 20바이트 + 각 차원당 4바이트 + 데이터 자체가 차지하는 바이트 만큼의 메모리를 차지하며, 각 항목의 수에 항목의 크기를 곱하면 데이터가 차지하는 메모리의 용량을 구할 수 있습니다. 예를 들면 2바이트를 차지하는 4개의 Integer 데이터 요소로 된 1차원 배열은 8바이트를 차지합니다. 데이터의 8바이트와 오버헤드 24바이트를 더하면 배열에 필요한 메모리 양은 32바이트가 됩니다.

Variant는 배열 자체보다 12바이트를 더 차지하는 배열을 가지고 있습니다.

메모 StrConv 함수는 문자열 데이터를 다른 형식의 문자열 데이터로 변환할 때 사용된다.

도움말 끝

<개인 생각>

개인적으로 실수는 Double을, 엑셀의 셀을 참조하기 위한 행, 열 관련 변수는 Long으로 하는 것이 좋다.