2012-03-07 3 views

답변

2

InsertParagraphAfter은 현재 단락을 확장하여 새로운 단락을 포함하도록되어 있습니다. 따라서 기존 단락의 끝에서 빈 선택 물을 만드는 것으로 시작하는 경우 InsertParagraphAfter을 호출 한 후 현재 단락을 새 단락으로 설정해야합니다.

나는 다음과 같은 코드를 테스트하지 않았으므로 (나는 컴파일을 시도해 본적이 없다), 나는 벗어날 수있다.

var p1 = document.Paragraphs.Add(ref o);  
// Set the selection to the end of the paragraph. 
document.Range(p1.Range.End, p1.Range.End).Select(); 
p1.Range.InsertParagraphAfter(); 
// InsertParagraphAfter should expand the active selection to include 
// the newly inserted paragraph. 
var newParagraph = document.Application.Selection; 
당신은 첫 번째 단락에 상대적으로 새로운 단락을 추가하여이 작업을 수행 할 수 있습니다
+0

이 불행하게도 어쩌면 당신은하지만 나는이 일을 해요 이유를 나를 도울 수 :(작동하지 않습니다. 두 테이블을 분리하여 자동으로 단어에 병합되지는 않지만, 다른 테이블 위에 직접 쌓아두기를 원합니다. InsertParagraphAfter()를 수행하면 전체 줄 바꿈으로 두 테이블이 분리됩니다. 테이블이 서로 위에 놓 이도록 새 단락을 수정하십시오. 내가 찾고있는 것을 성취하는 다른 방법이 있습니까? – sooprise

+0

@sooprise : doi를 시도하십시오 Word에서 매크로를 기록한 다음 VBA에서 코드를 체크 아웃하고 싶습니다. 어쩌면 그것이 어떻게 할 수 있는지에 대한 힌트를 줄 수 있습니까? –

+0

시도해 보니 불행히도 내가 원하는 결과를 얻지 못했습니다. – sooprise

0

:

Paragraph p1 = document.Paragraphs.Add(System.Reflection.Missing.Value); 
p1.Range.Text = "Foo"; 
p1.Range.InsertParagraphAfter(); 

// Add new paragraph relative to first paragraph 
Paragraph p2 = document.Paragraphs.Add(p1.Range); 
p2.Range.Text = "Bar"; 
p2.Range.InsertParagraphAfter(); 

// Add new paragraph relative to the second paragraph 
Paragraph p3 = document.Paragraphs.Add(p2.Range); 
p3.Range.Text = "Baz"; 
+1

MSDN에 따르면 Paragraphs.Add에 전화를 걸면 범위 앞 단락이 만들어집니다. BazBarFoo 당신처럼 보이는 무언가를 원하는 경우 : 푸 바 바즈가 당신은 사용해야 다음 '단락 P1 = document.Paragraphs.Add 샘플의 결과는 다음과 같을한다 (System.Reflection.Missing.Value); p1.Range.Text = "Foo"; 단락 p2 = p1.Range.Paragraphs.Add (System.Reflection.Missing.Value); p2.Range.Text = "막대"; 단락 p3 = p2.Range.Paragraphs.Add (System.Reflection.Missing.Value); p3.Range.Text = "Baz"; –

관련 문제