위 그림처럼 파워포인트에서
선택한 도형들을 위아래로 붙이거나 혹은 좌우로 붙이는 기능을 원하는 경우입니다.
도형이 많을 때는 가이드선에 맞춰서 도형을 정확히 붙이는 것이 힘들 수 있습니다.
자동으로 도형을 정렬하려면 . . .
1. 아래와 같은 VBA를 이용하시면 되겠습니다.
Sub attach_가로()
With ActiveWindow.Selection.ShapeRange
For i = 2 To .Count
.Item(i).Left = .Item(i - 1).Left + .Item(i - 1).Width
'.Item(i).Top = .Item(i - 1).Top
Next i
End With
End Sub
Sub attach_세로()
With ActiveWindow.Selection.ShapeRange
For i = 2 To .Count
.Item(i).Top = .Item(i - 1).Top + .Item(i - 1).Height
'.Item(i).Left = .Item(i - 1).Left
Next i
End With
End Sub
alt-f11 창에서 삽입 >모듈 추가하고 위 코드를 붙여넣고 코드창을 닫고
도형들을 선택하고 Alt-f8 누르고 'attach_가로/세로'를 실행해하세요.
빠른 실행에 추가하면 Alt-숫자키로 가능합니다.
실행화면:
샘플 파일 아래 첨부합니다.
2. 이 기능을 원하는 단축키를 사용할 수 있게 Autohotkey로 만들 수도 있습니다.
$F3::
ppt:=ComObjActive("PowerPoint.Application")
ppt.Visible := True
IfWinActive, ahk_exe POWERPNT.EXE
{
if (ppt.ActiveWindow.Selection.type !=2) {
MsgBox,Select shapes first.
return
}
try {
S := ppt.ActiveWindow.Selection.ShapeRange
loop, % S.Count {
if (A_Index >1) {
S.Item(A_Index).Left := S.Item(A_Index-1).Left + S.Item(A_Index-1).Width
}
}
}
ppt:=""
}
return
$F4::
ppt:=ComObjActive("PowerPoint.Application")
ppt.Visible := True
IfWinActive, ahk_exe POWERPNT.EXE
{
if (ppt.ActiveWindow.Selection.type !=2) {
MsgBox,Select shapes first.
return
}
try {
S := ppt.ActiveWindow.Selection.ShapeRange
loop, % S.Count {
if (A_Index >1) {
S.Item(A_Index).Top := S.Item(A_Index-1).Top + S.Item(A_Index-1).Height
}
}
}
ppt:=""
}
return
ExitMenu:
#x::
ExitApp
첨부한 AttachXY.exe를 실행합니다.
확인을 누르면 상태표시줄로 최소화됩니다.
파워포인트 슬라이드에서 원하는 도형을 선택하고 F3을 누르면 좌우로 붙게되고 F4를 누르로 상하로 붙게됩니다.
종료는 Win+X를 누릅니다.
3. 그리고 위 기능은 무료 추가기능 중 BrightSlide 에서도 Legacy Tools메뉴에 비슷한 기능(처음 두 도형의 간격을 나머지 도형들에 적용하는 기능)을 지원합니다. BrightSlide는 무료이지만 설치 후에 메일을 등록해야 사용이 가능합니다.
VBA코드 샘플 파워포인트 매크로파일:
Autohotkey 스크립트 소스:
Autohotke 실행파일:
Copyright ⓒ konahn 2023. You are free to use the source personally.
'AutoHotKey' 카테고리의 다른 글
파워포인트 다른 그림으로 바꾸기, 2가지 방법 (0) | 2023.07.02 |
---|---|
표(셀)에 맞게 사진 삽입하기 (0) | 2023.03.16 |
도형 잠금 효과 구현 (0) | 2023.03.04 |
현재 셀에 일정 여백을 두고 정확히 그림 삽입하기 (2) | 2023.02.26 |
두 개체 사이 거리를 다른 개체에 복사 적용 (0) | 2022.12.09 |
텍스트 상자 자동으로 들여쓰기/내어쓰기(Shift-Tab) (2) | 2022.12.02 |
화면확대후 키보드로 슬라이드 화면스크롤하기 (1) | 2022.10.13 |
단축키로 프로그램 실행 또는 파일 열기 (0) | 2022.09.26 |
최근댓글