Microsoft Office 애플리케이션의 개체 모델에 있는 대부분의 메서드는 선택적 매개 변수를 허용합니다. Visual Basic을 사용하여 Visual Studio에서 Office 솔루션을 개발하는 경우 기본값이 누락된 각 매개 변수에 자동으로 사용되므로 선택적 매개 변수에 대한 값을 전달할 필요가 없습니다. 대부분의 경우 Visual C# 프로젝트에서 선택적 매개 변수를 생략할 수도 있습니다. 그러나 문서 수준 Word 프로젝트에서 클래스의 선택적 ref 매개 변수는 ThisDocument 생략할 수 없습니다.
적용 대상: 이 항목의 정보는 문서 수준 프로젝트 및 VSTO 추가 기능 프로젝트에 적용됩니다. Office 응용 프로그램 및 프로젝트 유형에서 사용할 수 있는 기능을 참조하세요.
Visual C# 및 Visual Basic 프로젝트에서 선택적 매개 변수를 사용하는 방법에 대한 자세한 내용은 명명된 인수 및 선택적 인수(C# 프로그래밍 가이드) 및 선택적 매개 변수(Visual Basic)를 참조하세요.
비고
이전 버전의 Visual Studio에서는 Visual C# 프로젝트의 모든 선택적 매개 변수에 대한 값을 전달해야 합니다. 편의를 위해 이러한 프로젝트에는 매개 변수의 기본값을 사용하려는 경우 선택적 매개 변수에 전달할 수 있는 전역 missing 변수가 포함됩니다. Visual Studio의 Office용 Visual C# 프로젝트에는 여전히 변수가 포함되어 missing 있지만, Word용 문서 수준 프로젝트에서 클래스의 선택적 ref 매개 변수 ThisDocument 를 사용하여 메서드를 호출하는 경우를 제외하고 Visual Studio 2013에서 Office 솔루션을 개발할 때는 일반적으로 변수를 사용할 필요가 없습니다.
Excel의 예
메서드에는 CheckSpelling 많은 선택적 매개 변수가 있습니다. 다음 코드 예제와 같이 일부 매개 변수의 값을 지정하고 다른 매개 변수의 기본값을 적용할 수 있습니다. 이 예제에서는 워크시트 클래스가 있는 Sheet1문서 수준 프로젝트가 필요합니다.
Word의 예제
메서드에는 Execute 많은 선택적 매개 변수가 있습니다. 다음 코드 예제와 같이 일부 매개 변수의 값을 지정하고 다른 매개 변수의 기본값을 적용할 수 있습니다.
Word.Range documentRange = this.Application.ActiveDocument.Content;
documentRange.Find.ClearFormatting();
documentRange.Find.Execute(FindText: "blue", ReplaceWith: "red", Replace: Word.WdReplace.wdReplaceAll);
Word용 Visual C# 문서 수준 프로젝트에서 ThisDocument 클래스에 있는 메서드의 선택적 매개 변수 사용
Word 개체 모델에는 값을 허용하는 선택적 Object 매개 변수가 있는 여러 메서드가 포함되어 있습니다. 그러나 Word용 Visual C# 문서 수준 프로젝트에서 생성된 클래스 메서드의 선택적 ThisDocument 매개 변수는 생략할 수 없습니다. Visual C#을 사용하면 클래스가 아닌 인터페이스 메서드에 대해서만 선택적 ref 매개 변수를 생략할 수 있습니다. 예를 들어 다음 코드 예제는 클래스 메서드 의 CheckSpelling 선택적 ThisDocument 매개 변수를 생략할 수 없으므로 컴파일되지 않습니다.
Globals.ThisDocument.CheckSpelling(ignoreUppercase: true);
클래스의 메서드를 호출할 ThisDocument 때 다음 지침을 따릅니다.
선택적 ref 매개 변수의 기본값을 적용하려면 변수를
missing매개 변수에 전달합니다. 변수는missingVisual C# Office 프로젝트에서 자동으로 정의되며 생성된 프로젝트 코드의 값 Missing 에 할당됩니다.선택적 ref 매개 변수에 대해 고유한 값을 지정하려면 지정하려는 값에 할당된 개체를 선언한 다음 개체를 매개 변수에 전달합니다.
다음 코드 예제에서는 CheckSpelling 매개 변수의 값을 지정하고 다른 매개 변수의 기본값을 수락하여 메서드를 호출 하는 방법을 보여 줍니다.
object ignoreUppercase = true; Globals.ThisDocument.CheckSpelling( ref missing, ref ignoreUppercase, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);클래스에서 메서드의 선택적 ref 매개 변수를 생략하는 코드를 작성하려는 경우 속성에서
ThisDocument반환된 Document 개체에서 InnerObject 동일한 메서드를 호출하고 해당 메서드에서 매개 변수를 생략할 수도 있습니다. 클래스가 아닌 인터페이스이므로 이 Document 작업을 수행할 수 있습니다.Globals.ThisDocument.InnerObject.CheckSpelling(IgnoreUppercase: true);값 및 참조 형식 매개 변수에 대한 자세한 내용은 값 및 참조로 인수 전달(Visual Basic) 및 Pass 매개 변수(C# 프로그래밍 가이드)를 참조하세요.