컴퓨터 공부/엑셀 & VBA

[엑셀vba] 파워포인트 제어하기

도 박사 2020. 8. 27. 21:46
반응형

MS Office의 가장 큰 장점은 VBA를 지원하는 것이라 생각된다.

 

VBA 하나로 MS Office의 모든 프로그램들을 제어 할 수 있기 때문이다. 허허ㅏ하핳하

 

사용법이 조금씩 다른건 어쩔 수 없는 부분..? ㅇㅈ? ㅇㅇㅈ


엑셀vba에서 파워포인트를 제어하기 위해선 편집기에서 참조 하나만 해주면 된다.

 

파워포인트 참조하기
power만 쳐도 자동완성으로 나타남

참조를 추가하게 되면 파워포인트vba에서 사용할 수 있는 함수들을 엑셀vba에서도 써먹을 수 있게 된다. 

 

엑셀과 파워포인트 차이점이라면 변수 형태가 달라진다. (다른 프로그램도 마찬가지)

 

엑셀은 sheet, workbook 으로 문서 변수를 선언한다면

 

파워포인트는 presentation, 워드는 document로 한다는 것을 알게되었다. (아직 알아가는 단계라 많은것을 알지 못함)

 

파워포인트 문서 열기
파워포인트 .open 메소드

vba로 파워포인트를 열 때 open 함수가 엑셀과 많이 다르다.

 

파라미터는 4가지만 받으며 필수 항목은 파일 경로, 나머지 3개는 안넣어도 상관없다.

 

4번째 파라미터를 'msoFalse' 설정하면 파워포인트 창이 나타나지 않는다. 

 

엑셀 .open 메소드

파워포인트에 비하면 어마어마하게 파라미터가 많다.

 

다 쓸 필요는 없는 부분이니 영어보고 대충 필요한 것들 골라 쓰면됨

 

엑셀에는 암호걸린 파일이 있으면 알아서 암호 넣으라고 password 파라미터가 존재하지만 파워포인트는 그런게 음슴?!?

 

분명 파워포인트에도 암호설정하는 기능이 있지만  .open 메소드에는 패스워드를 받는 파라미터가 존재하지 않음

 

구글링 결과 파워포인트는 독특하게 암호를 넣도록 되어있었다.

 

파일경로 뒤에 ::12345:: 붙여 주면 해결

암호넣고 열기

이렇게하면 암호걸린 파워포인트도 쉽게 열 수 있다.


파일을 열어봤으면  저장도 해야한다.

 

저장하는 것도 엑셀과 다르다 ;;

 

웃긴놈일세...

 

파워포인트 .SaveAs메소드
저장하기
오 쉣;

일단 열었던 방법으로 암호넣고 저장을 해볼랬는데 런타임 오류나왔네

 

이 방법은 잘못된거 같아 다른 방법을 찾아봄

 

지역창 활용하기

presentation 변수로 사용된 ppt_prt 앞에 + 표시를 누르면 복잡한 글자들 나오는데 

 

깔끔하게 무시해주고 내가 필요한 것은 어떤게 있을지 이름들을 확인한다.

 

그러다가 password 이름을 가진 녀석을 발견했고 이 놈을 이용해서 저장할 때 암호를 걸어보도록 하겠다.

 

POWER POINT1 이름의 새로운 파일을 만들고 테스트를 했다.

 

비밀번호는 654로 설정하고 코드를 실행해보니 잘되었다.

 

끝 


암호걸린 파일에 새로운 암호 넣으니 적용이 안됨.. 해결 방안을 찾아봐야겠음 

반응형