표는 자동으로 다음 페이지로 유입되고, 당신은뿐만 아니라 제목 행을 반복 지정할 수 있습니다.
Sub copytable1()
Dim rtarget As Word.Range
With ActiveDocument
Set rtarget = .Range(.Content.End - 1, .Content.End - 1)
rtarget.InsertBreak Type:=Word.WdBreakType.wdPageBreak
Set rtarget = .Range(.Content.End - 1, .Content.End - 1)
rtarget.FormattedText = .Tables(1).Range.FormattedText
Set rtarget = Nothing
End With
End Sub
그것은 가정 : 다음과 같은 코드가 서식을 해치는 경우
하지만 새 테이블이 필요한 가정은 ...
원래 질문은 몇 가지 해명 (아래 몇 가지 포인트 참조)하지만 볼 필요
- 것을 복사 할 표는 단지를 삽입 할 문서
- 에서 첫 번째 테이블은 새 페이지를 문서의 끝에 추가하고 그 후에 표의 사본을 삽입하십시오. 문서가 이미 여러 페이지로되어있을 수있는 경우 상당히 다른 코드가 필요합니다.
편집 가능한 워드 문서를 작성는으로 "좋은 연습,"당신은 내가했던 것처럼 오히려 하드 페이지 나누기보다 휴식을 달성하기 위해 설정 속성을 "전에 페이지 나누기"를 함께 단락 스타일을 사용합니다. 답장을 보내
또는
,
Sub copytable3()
Dim rtarget As Word.Range
With ActiveDocument
Set rtarget = .Range
rtarget.Collapse wdCollapseEnd
rtarget.InsertParagraphAfter
Set rtarget = .Range
rtarget.Collapse wdCollapseEnd
rtarget.ParagraphFormat.PageBreakBefore = True
Set rtarget = .Range
rtarget.Collapse wdCollapseEnd
rtarget.InsertParagraphAfter
Set rtarget = .Range
rtarget.Collapse wdCollapseEnd
rtarget.ParagraphFormat.PageBreakBefore = False
Set rtarget = .Range
rtarget.Collapse wdCollapseEnd
rtarget.Select
rtarget.FormattedText = .Tables(1).Range.FormattedText
Set rtarget = Nothing
End With
End Sub
안녕하세요 bibadia, 덕분에, 당신의 가정은 정확히 내 요구 사항과 일치한다. 그러나 나는 아래 줄에 런타임 오류 '4198'을 얻고 코드 .... rtarget.InsertBreak 유형 실행하면 = Word.WdBreakType.wdPageBreak 을 나는 이전 라인의 범위 개체를 만들 수 있다고 생각합니다. Excel 2013을 사용 중입니다. 자세한 내용을 알고 싶다면 알려 주시기 바랍니다. – compyutech
감사합니다. Excel에서 VBA를 실행하는 경우 "ActiveDocument"를 사용하면 (적어도) 가지고있는 Word 개체의 이름으로 정규화하지 않으면 작동하지 않습니다. CreateObject 또는 GetObject.이미이 작업을 수행하고 있다면 기존 게시물을 편집하여 현재 작업중인 코드를 표시하는 것이 좋습니다. –
안녕하세요, 선생님, 잘못된 정보를 주신 것에 대해 죄송합니다. Office 2013을 사용하고 있습니다. 자체적으로 말한 매크로에서 매크로를 실행하고 있지만 Excel에서는 아닙니다 ... 감사합니다. – compyutech