2017-03-15 14 views
0

以下のコードは、ワークシートにあるテーブルをコピーし、新しいMicrosoft Word文書に貼り付けます。唯一の問題は、単語の文書に貼り付けたときにテーブルの半分を切り捨てることです。助言がありますか?ありがとう。Excel VBAボタンワークシートを新しい単語にコピーする

Sub btnExport() 
Dim objWord As Word.Application 
Range("C2:D60").Copy 

Set objWord = CreateObject("Word.Application.14") 
With objWord 
    .Documents.Add 
    .Visible = True 
    .Selection.Paste 
End With 
End Sub 

Sheet I'm using

+2

コピーするデータの例はありますか?また、どちらの半分がカットされていますか?あなたはテーブルの底を失いますか、または2番目の列はページの右側に流れていますか? – Dave

+0

2番目の列はページの右側にあります。 –

+0

WordのPortraitではなくLandscapeモードの使用を検討しましたか?それともテーブルが大きすぎますか? 2つの列だけがあります - 各列のデータの大きさはどれくらいですか?あなたは使用中のデータの例を教えてくれますか? – Dave

答えて

1

あなたは文書に表フィットを作るためのWord AutoFitコマンドを使用することができます。私は、風景にも方向を入れ替えるコードを含んでいますが、これは必要ではないかもしれません。

Sub btnExport() 
    Dim objWord As Word.Application 
    Range("C2:D60").Copy ' you should name the worksheet as well here really 

    Set objWord = CreateObject("Word.Application.14") 
    With objWord 
     .Documents.Add 
     .ActiveDocument.PageSetup.Orientation = 1 'wdOrientLandscape 
     .Visible = True 
     .Selection.Paste 
     .ActiveDocument.Tables(1).AutoFitBehavior 2 'wdAutoFitWindow 
    End With 
End Sub 
+0

メソッドまたはデータメンバーが見つかりません。エラー。テーブル(1).AutoFitBehavior 2 'wdAutoFitWindow –

+0

テーブルは編集された 'Document'オブジェクトに属するコレクションです。 – Dave

+0

パーフェクト、ありがとう! –

関連する問題