2016-06-20 22 views
0

ブックを開いて別のブック(wb2)にコピーしてからwb1を閉じるマクロがあります。しかし、私はいつもメッセージの下に、大量のクリップボードデータがあり、私はプロンプトを表示したくありません。いくつかの調査をした後、私は 'Application.CutCopyMode'をfalse(これはクリップボードをクリア)に設定すると、この問題を解決することができましたが、それはないことがわかりました。ファイルを閉じるときにクリップボード警告メッセージを表示することができません

Application.CutCopyMode = False 
... 

'copy the range from source book 
wb1.Worksheets("Sheet1").Range("A1:V2").Copy 
'paste the data on the target book 
wb2.Worksheets("Sheet1").Range("A1:V2").PasteSpecial 

wb.Close savechanges:=False 

enter image description here

は、どのように私はこのメッセージを表示せずにファイルを閉じることができますか?

+1

:あなたはちょうどその代わりに、コピー&ペースト&の、全体の値をコピーしたい場合は、単に直接値を割り当てます22328170/1153513元のワークブックのクリップボードをクリアする必要があることに注意してください。だから、あなたの例でなければならない 'wb1.Application.CutCopyMode = False' – Ralph

答えて

1

あなたはどんなメッセージを抑制したい場合は、ファイルを閉じる前に、以下を追加しますが:

Application.DisplayAlerts = False

クリップボードの内容をクリアしたい場合は、コピー/貼り付けの操作を実行した後Application.CutCopyMode = Falseを追加する必要があります。このように:

... 

'copy the range from source book 
wb1.Worksheets("Sheet1").Range("A1:V2").Copy 
'paste the data on the target book 
wb2.Worksheets("Sheet1").Range("A1:V2").PasteSpecial 

Application.CutCopyMode = False 

wb.Close savechanges:=False 
+0

しかし、他の重要な警告が出たらどうなるでしょうか? – BDillan

+0

ああ、ok ...その警告を抑制したいだけです。その場合は、Copy/Pasteアクションを実行した後に 'Application.CutCopyMode = False'を実行し、' Application.DisplayAlerts = FALSE'ステートメントを削除することができます。私は私の答えを更新する –

1

あなたは何をしたいのですか? http://stackoverflow.com/a/:あなたは、次のを見てしたい場合があります

wb2.Worksheets("Sheet1").Range("A1:V2").value = wb1.Worksheets("Sheet1").Range("A1:V2").value 
関連する問題