요약

Automation을 사용하면 사용자가 Word에서 수동으로 할 수 있는 거의 모든 Microsoft Office 수 있습니다. 그러나 입력하고 서식을 지정하려는 텍스트가 많은 경우 많은 코드가 필요할 수 있습니다. 데이터를 RTF(리치 텍스트 형식) 문자열로 표현할 수 있는 경우 자동화 코드를 자주 줄일 수 있습니다. RTF 문자열을 만들고, RTF 문자열을 클립보드에 복사한 다음 RTF 문자열을 문서에 붙여넣을 수 있습니다.이 문서에서는 Word를 시작하고, Visual Basic 문서를 만들고, 미리 빌드된 RTF 문자열을 사용하여 문서에 서식이 지정된 텍스트를 추가하는 간단한 예제를 빌드하는 방법을 설명합니다.

추가 정보

예제 프로젝트를 만들 경우 다음 단계를 수행합니다.

  1. Visual Basic 시작한 다음 새 표준 EXE를 생성합니다. 기본적으로 Form1이라는 폼이 만들어집니다.

  2. 폼에 CommandButton을 추가하고 CommandButton을 두 번 클릭한 다음 다음 코드를 클릭 이벤트에 추가합니다.

    'sRTF represents the rich-text-formatted string to paste into WordDim sRTF As StringsRTF = "{\rtf1\ansi\ansicpg1252\deff0\deftab720{\fonttbl" & _       "{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}" & _       "{\f2\froman\fprq2 Times New Roman;}}" & _       "{\colortbl\red0\green0\blue0;\red255\green0\blue0;}" & _       "\deflang1033\horzdoc{\*\fchars }{\*\lchars }" & _       "\pard\plain\f2\fs24 Line 1 of \plain\f2\fs24\cf1" & _       "inserted\plain\f2\fs24  file.\par }"'Copy the contents of the Rich Text to the clipboardDim lSuccess As LongDim lRTF As LongDim hGlobal As LongDim lpString As LonglSuccess = OpenClipboard(Me.hwnd)lRTF = RegisterClipboardFormat("Rich Text Format")lSuccess = EmptyClipboardhGlobal = GlobalAlloc(GMEM_MOVEABLE Or GMEM_DDESHARE, Len(sRTF))lpString = GlobalLock(hGlobal)CopyMemory lpString, ByVal sRTF, Len(sRTF)GlobalUnlock hGlobalSetClipboardData lRTF, hGlobalCloseClipboardGlobalFree hGlobal'Paste into a new Word documentDim oWord As ObjectDim oDoc As ObjectSet oWord = CreateObject("word.application")Set oDoc = oWord.Documents.AddoWord.Selection.PasteoWord.Visible = True
  3. 폼 모듈의 일반 선언 섹션에 다음 코드를 추가합니다.

    Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function RegisterClipboardFormat Lib "user32" Alias _    "RegisterClipboardFormatA" (ByVal lpString As String) As LongPrivate Declare Function EmptyClipboard Lib "user32" () As LongPrivate Declare Function CloseClipboard Lib "user32" () As LongPrivate Declare Function SetClipboardData Lib "user32" ( _    ByVal wFormat As Long, ByVal hMem As Long) As LongPrivate Declare Function GlobalAlloc Lib "kernel32" (ByVal wFlags As Long, _    ByVal dwBytes As Long) As LongPrivate Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _    ByVal Destination As Long, Source As Any, ByVal Length As Long)Private Declare Function GlobalUnlock Lib "kernel32" (ByVal hMem As Long) As LongPrivate Declare Function GlobalLock Lib "kernel32" (ByVal hMem As Long) As LongPrivate Declare Function GlobalFree Lib "kernel32" Alias "GlobalFree" ( _     ByVal hMem As Long) As LongPrivate Const GMEM_DDESHARE = &H2000Private Const GMEM_MOVEABLE = &H2
  4. F5 키를 눌러 프로젝트를 실행합니다. Word가 시작된 다음 서식이 지정된 텍스트를 포함하는 새 문서가 만들어집니다.

참조

솔루션 개발을 위한 Office 자세한 내용은 다음 Microsoft 웹 사이트를 방문하세요.

http://support.microsoft.com/ofd http://msdn.microsoft.com/office

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.