생강 2.7.53.0
Ginger는 무료 맞춤법 및 문법 검사기입니다.
며칠 전에 PowerPoint 슬라이드를 만드는 다소 평범한 작업을 자동화하고 싶었습니다. PowerPoint를 자동화할 때 일반적으로 슬라이드 및 도형 컬렉션으로 작업합니다. 슬라이드는 설명이 필요 없으며 모양은 텍스트 상자, 작업 버튼, 미디어 개체, 레이블, 그림, 설명선, 순서도 등을 포함한 거의 모든 것입니다. PowerPoint를 사용하여 기술을 보여줄 것이지만 일부 구문은 실제로 Microsoft Word 및 Excel에 적용할 수 있습니다.
요약하자면 PowerPoint에서 VBA 매크로 개발을 시작하기 전에 개발 탭을 활성화 해야 합니다 .
먼저 VBA에서 프레젠테이션 만들기 자습서에 표시된 대로 일부 슬라이드가 포함된 프레젠테이션을 자동으로 만드는 것부터 시작하겠습니다 .
이제 Shapes 작업을 시작할 수 있습니다. 먼저 Alt+ F11을 눌러 VBA 편집기를 엽니다. 이전 자습서를 따랐다면 모듈 목록에 모듈 1이 있어야 합니다(아래 참조).
VBA로 모양 작업
VBA로 텍스트 상자 추가
프레젠테이션의 첫 번째 슬라이드에 세로 텍스트 상자를 추가하는 것으로 시작하겠습니다. Module1에 다음 코드를 추가한 다음 저장 버튼(Ctrl+s)을 누르고 매크로를 실행합니다(F5 누르기 또는 하위/사용자 양식 실행 누르기).
Sub CreateTextBox()
Set MySlide = ActivePresentation.Slides(2)
With MySlide.Shapes
.AddTextbox(Orientation:=msoTextOrientationVertical, _
Left:=90, Top:=200, Width:=80, _
Height:=200).TextFrame.TextRange.Text _
= ("This is my vertical text box")
End With
End Sub
VBA를 사용하면 텍스트 상자 크기를 훨씬 쉽게 조정할 수 있습니다. 이 경우 두 번째 슬라이드에서 첫 번째 모양의 크기를 조정합니다. 필요에 따라 자유롭게 수정할 수 있습니다.
Sub ResizeText()
Set MyShape = ActivePresentation.Slides(2).Shapes(1)
'Add your required dimensions as needed below
With MyShape
.Width = 200
.Height = 35
End With
End Sub
VBA를 사용한 텍스트 효과
이제 프레젠테이션의 모든 슬라이드에 텍스트 상자를 추가한다고 가정해 보겠습니다. 이번에는 좀 더 시각적으로 매력적입니다. 이를 위해 VBA를 사용하여 프레젠테이션의 하나 이상의 슬라이드에 포함할 수 있는 사용자 지정 텍스트 효과를 만듭니다. 먼저 프레젠테이션 슬라이드를 반복한 다음 필요에 따라 텍스트 효과를 추가합니다.
Sub SetEffects()
Dim i As Integer
For i = 1 To ActivePresentation.Slides.Count
ActivePresentation.Slides(i) _
.Shapes.AddTextEffect msoTextEffect12, "Draft for Review", _
"Segoe UI", 32, msoTrue, msoTrue, 650, 50
Next
End Sub
다음은 결과입니다 ;-):
이 특정 결과를 달성하기 위해 간단한 워터마크를 사용할 수도 있습니다.
VBA가 포함된 PowerPoint 설명선
다음 예는 프레젠테이션에 콜아웃을 추가하는 것입니다. 이 예에서는 두 번째 슬라이드에 설명선을 추가합니다.
Sub CreateCallout()
ActivePresentation.Slides(2).Shapes.AddCallout(Type:=msoCalloutTwo, Left:=200, Top:=50, _ Width:=300, Height:=100).TextFrame.TextRange.Text = "My Callout"
End Sub
도형의 많은 서식 지정 속성은 Shape 또는 ShapeRange 개체 에 직접 적용되는 속성에 의해 설정되지 않습니다 . 대신 관련 모양 특성은 모양의 채우기와 관련된 모든 속성을 포함하는 FillFormat 개체 또는 연결된 OLE 개체에 고유한 모든 속성을 포함하는 LinkFormat 개체와 같은 보조 개체 아래에 그룹화됩니다. 모양의 속성을 설정하려면 먼저 관련 모양 특성 집합을 나타내는 개체를 반환한 다음 반환된 해당 개체의 속성을 설정해야 합니다. 예를 들어 다음 예제와 같이 Fill 속성을 사용하여 FillFormat 개체를 반환한 다음 FillFormat 개체 의 ForeColor 속성을 설정하여 지정된 모양에 대한 채우기 전경색을 설정합니다.
VB
Set myDocument = ActivePresentation.Slides(1)
myDocument.Shapes(1).Fill.ForeColor.RGB = RGB(255, 0, 0)
사용자 인터페이스에는 여러 모양을 선택하여 수행할 수 있는 몇 가지 작업이 있습니다. 예를 들어 여러 모양을 선택하고 모든 개별 채우기를 한 번에 설정할 수 있습니다. 단일 모양을 선택한 경우에만 수행할 수 있는 다른 작업도 있습니다. 예를 들어 단일 도형을 선택한 경우에만 도형의 텍스트를 편집할 수 있습니다.
Visual Basic에는 도형 집합에 속성과 메서드를 적용하는 두 가지 방법이 있습니다. 이 두 가지 방법을 사용하면 사용자 인터페이스에서 동일한 작업을 수행할 수 있는지 여부에 관계없이 다양한 모양의 단일 모양에 대해 수행할 수 있는 작업을 수행할 수 있습니다.
작업이 사용자 인터페이스에서 선택한 여러 셰이프에 대해 작동하는 경우 작업할 셰이프가 포함된 ShapeRange 컬렉션을 구성하고 적절한 속성과 메서드를 ShapeRange 컬렉션에 직접 적용하여 Visual Basic에서 동일한 작업을 수행할 수 있습니다.
사용자 인터페이스에서 선택한 여러 모양에 대해 작업이 작동하지 않는 경우에도 Shapes 컬렉션 또는 작업하려는 모양이 포함된 ShapeRange 컬렉션을 통해 반복하고 적절한 속성을 적용하여 Visual Basic에서 작업을 수행할 수 있습니다. 컬렉션의 개별 Shape 개체에 대한 메서드입니다.
Shape 개체 및 ShapeRange 컬렉션 에 적용되는 많은 속성과 메서드는 특정 종류의 도형에 적용되면 실패합니다. 예를 들어 텍스트를 포함할 수 없는 도형에 TextFrame 속성을 적용하면 실패합니다. ShapeRange 컬렉션 의 각 셰이프에 특정 속성이나 메서드가 적용될 수 있다는 확신이 없다면 ShapeRange 컬렉션 에 해당 속성이나 메서드를 적용하지 마세요 . 이러한 속성이나 메서드 중 하나를 모양 컬렉션에 적용하려면 컬렉션을 반복하고 각 개별 모양을 테스트하여 속성이나 메서드를 적용하기 전에 적절한 모양 유형인지 확인해야 합니다.
사용자 인터페이스에서 선택한 여러 모양에 대해 동시에 작업을 수행할 수 있는 경우 ShapeRange 컬렉션을 구성한 다음 여기에 적절한 속성이나 메서드를 적용하여 프로그래밍 방식으로 동일한 작업을 수행할 수 있습니다. 다음 예제에서는 "Big Star" 및 "Little Star"라는 도형을 포함하는 모양 범위를 구성하고 여기에 그라데이션 채우기를 적용하고 그라데이션 채우기를 적용합니다.myDocument
VB
Set myDocument = ActivePresentation.Slides(1)
Set myRange = myDocument.Shapes _
.Range(Array("Big Star", "Little Star"))
myRange.Fill.PresetGradient msoGradientHorizontal, _
1, msoGradientBrass
다음은 ShapeRange 컬렉션 에 적용될 때 속성과 메서드가 어떻게 작동하는지에 대한 일반적인 지침입니다 .
컬렉션에 메서드를 적용하는 것은 해당 컬렉션의 각 개별 Shape 개체에 메서드를 적용하는 것과 같습니다.
컬렉션의 속성 값을 설정하는 것은 해당 범위에 있는 각 개별 모양의 속성 값을 설정하는 것과 같습니다.
상수를 반환하는 컬렉션의 속성은 컬렉션의 모든 모양이 해당 속성에 대해 동일한 값을 갖는 경우 컬렉션의 개별 모양에 대한 속성 값을 반환합니다. 컬렉션의 모든 모양이 속성에 대해 동일한 값을 갖지 않는 경우 "혼합" 상수를 반환합니다.
간단한 데이터 유형(예: Long , Single 또는 String )을 반환하는 컬렉션의 속성은 컬렉션의 모든 셰이프가 해당 속성에 대해 동일한 값을 갖는 경우 개별 셰이프에 대한 속성 값을 반환합니다.
일부 속성의 값은 컬렉션에 정확히 하나의 모양이 있는 경우에만 반환되거나 설정될 수 있습니다. 컬렉션에 셰이프가 두 개 이상 있으면 런타임 오류가 발생합니다. 이는 일반적으로 사용자 인터페이스에서 동일한 작업이 단일 모양(예: 모양의 텍스트 편집 또는 자유 형식의 점 편집)에서만 가능한 경우 속성을 반환하거나 설정하는 경우입니다.
앞의 지침은 FillFormat 개체 와 같은 ShapeRange 컬렉션 의 보조 개체 아래에 그룹화된 도형의 속성을 설정할 때도 적용됩니다 . 보조 개체가 사용자 인터페이스에서 선택한 여러 개체에 대해 수행할 수 있는 작업을 나타내는 경우 ShapeRange 컬렉션에서 개체를 반환하고 해당 속성을 설정할 수 있습니다 . 예를 들어 Fill 속성을 사용하여 ShapeRange 컬렉션 에 있는 모든 모양의 채우기를 나타내는 FillFormat 개체를 반환 할 수 있습니다 . 이 FillFormat 개체 의 속성을 설정하면 ShapeRange 컬렉션 의 모든 개별 모양에 대해 동일한 속성이 설정됩니다 .
사용자 인터페이스에서 여러 셰이프를 선택한 다음 명령을 사용하여 동시에 여러 셰이프에 대한 작업을 수행할 수 없는 경우에도 Shapes 컬렉션 또는 셰이프 가 포함된 ShapeRange 컬렉션을 반복하여 프로그래밍 방식으로 동일한 작업을 수행할 수 있습니다. 작업하고 컬렉션의 개별 Shape 개체에 적절한 속성과 메서드를 적용하려고 합니다. 다음 예제에서는 모든 도형을 반복하고 도형인 각 도형에 텍스트를 추가합니다. 도형인 각 도형에 텍스트를 추가합니다.myDocument
VB
Set myDocument = ActivePresentation.Slides(1)
For Each sh In myDocument.Shapes
If sh.Type = msoAutoShape Then
sh.TextFrame.TextRange.InsertAfter " (version 1)"
End If
Next
다음 예제에서는 활성 창에서 현재 선택된 모든 도형을 포함하는 ShapeRange 컬렉션을 생성하고 텍스트를 포함할 수 있는 컬렉션의 각 도형에 텍스트를 설정합니다.
VB
For Each sh in ActiveWindow.Selection.ShapeRange
If sh.HasTextFrame Then
sh.TextFrame.TextRange = "Initially selected"
End If
Next
Align 및 Distribute 메서드를 사용하여 도형 세트를 서로 기준으로 또는 해당 도형이 포함된 문서를 기준으로 배치합니다. 그룹 방법 또는 재그룹 방법을 사용하여 모양 집합에서 단일 그룹화된 모양을 만듭니다.
Ginger는 무료 맞춤법 및 문법 검사기입니다.
블록스는 초등학교 3학년 학생들의 감지 능력과 시력 능력을 연습할 수 있는 지적 게임으로, 교사들이 IT 교육 지원 프로그램에 포함시키고 있습니다.
Prezi는 온라인과 오프라인 모두에서 디지털 프레젠테이션을 만들 수 있는 무료 애플리케이션입니다.
Mathway는 기기에 내장된 계산기보다 더 복잡한 도구가 필요한 모든 수학 문제를 해결하는 데 도움을 줄 수 있는 매우 유용한 앱입니다.
Adobe Presenter는 Microsoft Windows 플랫폼에서 Microsoft PowerPoint 플러그인으로 사용할 수 있도록 Adobe Systems에서 출시한 e-Learning 소프트웨어입니다.
Toucan은 교육 기술 플랫폼입니다. 일상적인 웹사이트를 탐색하면서 새로운 언어를 배울 수 있습니다.
eNetViet은 부모와 자녀가 공부하는 학교를 연결하여 자녀의 현재 학습 상황을 명확하게 이해할 수 있도록 도와주는 애플리케이션입니다.
듀오링고 - 무료로 언어 배우기, 간단히 듀오링고는 다양한 언어를 배우고 연습할 수 있는 교육 프로그램입니다.
RapidTyping은 타이핑 속도를 향상시키고 철자 오류를 줄이는 데 도움이 되는 편리하고 사용하기 쉬운 키보드 교육 도구입니다. 다양한 수준으로 구성된 수업을 통해 RapidTyping은 기존 기술을 입력하거나 향상시키는 방법을 가르쳐줍니다.
MathType은 개발자 Design Science(Dessci)의 대화형 방정식 소프트웨어로, 이를 통해 워드 프로세싱, 프레젠테이션, eLearning 등에 대한 수학적 표기법을 생성하고 주석을 달 수 있습니다. 이 편집기는 TeX, LaTeX 및 MathML 문서 생성에도 사용되었습니다.