하이퍼링크로 로컬 사진과 연결하려면 사진을 pptx파일이 있는 폴더에 함께 두고 하이퍼링크를 해당 파일로 링크하신 다음에 이동할 때 사진도 pptx파일과 함께 그대로 이동시켜야 합니다. 1. 사진을 누락시키기 쉽기 때문에 이런 경우 사진을 삽입 메뉴에서 '개체'로 삽입하시면 사진 파일이 pptx파일 내부에 포함되어 절대 누락되지 않습니다. 강아지 아이콘을 더블 클릭하면 내부의 강아지.jpg파일이 기본 이미지 뷰어로 열립니다. 2. 강아지 아이콘과 캡션을 바꾸고 싶다면 '아이콘으로 표시'를 체크하고 아이콘 변경을 누르고 나서 C:\Windows\System21\Shell32.DLL 같은 파일을 선택하고 원하는 아이콘으로 변경하고 또한 캡션내용도 수정하면 아래처럼 다른 아이콘과 캡션으로 변경할 수 있..
분류 전체보기 검색 결과
VBA 처리과정도 마우스로 슬라이드의 표(테이블)을 복사해서 엑셀 시트에 붙여넣는 것과 유사합니다. 테이블.Copy 해서 시트의 셀.Paste 하거나 시트.PasteSpecial로 붙여넣습니다. 테이블이 여러개 일텐데 아래와 같은 샘플을 만들었습니다. VBA코드: 더보기 'Copy the table content on each slide to Excel sheet Option Explicit Const TextOnly As Boolean = False Sub CopyTableToSheet() Dim xl As Object 'New Excel.Application Dim wb As Object 'Excel.Workbook Dim sht As Object 'Excel.Worksheet Dim rn..
원래는 VBA에서 아래와 같은 명령으로 선택된 도형의 폰트 윤곽선을 없앨 수 있습니다. ActiveWindow.Selection.ShapeRange.TextFrame2.TextRange.Font.Line.Visible = msoFalse 하지만 VBA 버그인지(?) 작동하지 않습니다. Line.Visible = msoTrue 는 작동하지만 Line.Visible = msoFalse 는 작동하지 않습니다. 엑셀에서 매크로 녹화를 해도 위와 같은 코드가 나오지만 실행하면 적용이 되지 않습니다. 직접 도형이나 텍스트를 선택하고 윤곽선 '없음'을 선택하면 적용이 됩니다. VBA에서 처리하려면 임의의 텍스트 상자를 만들고 텍스트를 거기에 붙여넣고 다시 원래 도형에 붙여넣는 식의 작업을 해야합니다. 텍스트의 다..
VBA에서 두 도형의 교차 혹은 충돌여부를 판단할 때 단순한 사각형의 경우 AABB 방식으로 두 도형의 좌표와 넓이와 높이를 비교해서 알아낼 수 있습니다. 하지만 도형이 회전한 경우나 사각형이 아닌 복잡한 도형의 경우 AABB방식은 실패합니다. 그래서 두 도형간에 선을 그어서 교차하는 점이 몇개인지 검사하거나 다른 복잡한 알고리즘들을 사용합니다. 두 도형간의 교차 여부를 알려주는 프로그램언어도 있지만 VBA에서는 도형의 충돌체크가 간단하지 않습니다. 이 경우 시간은 좀 걸릴 수 있지만 간단히 두 도형을 도형병합(교차)을 이용해서 교차시켜보고 나오는 도형이 있는지 검사해본다면 쉽게 충돌여부를 알아낼 수 있습니다. (단, 도형병합을 지원하는 2010버전 이상이어야겠습니다.) 위의 그림에서 왼쪽 두 번개는 충..
VBA로 텍스트를 일괄로 변경할 때 일반적인 도형 뿐만아니라 그룹도형 내부의 자식 도형들, 차트내의 차트제목, 계열제목, 데이터라벨, 스마트 아트 내부 텍스트, 테이블(표)의 텍스트 등 여러가지 상황을 고려해서 만들기 어렵습니다. 각 개체마다 텍스트에 접근하는 방식이 약간식 달라서 간단히 만들기 쉽지 않습니다. 여기서 여러가지 개체의 텍스트에 접근하는 예시를 보여주고자 합니다. 일단 테이블과 스마트아트, 그리고 차트개체에 집중해서 텍스트에 접근해보겠습니다. 특히 특정색깔의 텍스트를 다른색깔로 일괄 변경하는 작업을 예시로 들겠습니다. 아래와 같이 슬라이드가 있을 때 표 내부의 텍스트 색, 차트 내부의 텍스트색, 스마트 아트 내부의 텍스트 색에 접근합니다. TextFrame.TextRange 보다 TextF..
관련: 지식인 차트를 복사해서 다른 데이터 영역을 반영하고 싶을 때 수작업으로 하려면 차트를 계속 복사하고 '데이터 선택'을 눌러서 다른 셀 영역을 계속 선택해주면 됩니다. 이 때 만일 변경할 데이터가 너무 많다면 VBA를 이용해야겠습니다. 마치 한글에서 메일머지 기능을 이용하듯이 엑셀 양식에 데이터를 넣어두고 파워포인트에는 차트를 복사해서 양식을 갖춰 놓은 상태에서 매크로로 슬라이드(차트)복사 후 엑셀 데이터 업데이트 작업을 일괄 처리합니다. 차트개체는 가로세로 방향, 추가된 개체, 서식 등이 모두 다르기 때문에 상황에 따라 변수가 있을 수 있지만 주된 흐름은 아래 방법을 이용해서 처리할 수 있겠습니다. 여기서는 엑셀에 데이터가 4개의 세트가 있고 파워포인트에 복사된 차트('Chart 1'이라는..
파워포인트에 삽입된 차트가 연결로 삽입되었다가 원본엑셀파일이 사라져서 엑셀 데이터를 수정하지 못할 때 How to recover the excel data from a chart whose excel link is broken 참고: 지식인 일단엑셀의 혹시 원본 경로가 잘못되었는지부터 확인해보세요. 파일 > 정보에서 '파일연결편집'을 눌러보면 엑셀파일이 있어야할 경로가 보입니다. 파일은 있는데 경로가 바뀌었다면 '원본 변경'을 눌러서 바꿀 수 있습니다. 현재로서는 연결된 원본 XLSx 파일이 없기 때문에 엑셀데이터 원본을 그대로 되살리기 어렵습니다. 다만, 아래 VBA를 이용하면 파워포인트 차트에 남아있는 데이터를 이용해서 데이터 숫자는 복구해볼 수 있습니다. 더보기 Option Explicit Su..
파워포인트, 엑셀 등에서 Alt키를 누르고 일련의 키를 눌러서 단축키를 쓸 수 있습니다. 예를 들어, 선택된 도형내 텍스트의 가로 정렬을 왼쪽으로 하려면 'Alt+H'를 누르고 그 다음 'A,L'을 누르는 식입니다. 하지만 단축키라고 하기엔 너무 많은 키를 조합해야 해서 실제로는 쓸모가 없습니다. 예를 들어, 선택된 도형내 텍스트의 세로 정렬을 위쪽으로 하려면 'Alt+H'를 누르고 그 다음 'A, T, T'를 차례로 누르는데 빠른 단축키라기 보다는 단계적인 키조작이라고 볼 수 있습니다. 이 때 AutoHotKey를 이용해서 단축키 하나만 누르면 일련의 단축키 조합을 자동으로 눌리게 할 수 있습니다. 여기서 주의할 것은 오피스에서는 처음 단축키는 Alt키를 0.1초정도 일정시간이상 누르고 있어야 작동하기..
최근댓글