異なる範囲にコピーされた値、書式、画像(vba sciptを持つアクティブブック)を必要とする範囲(別のブックに)があります。コピー/ペーストは、最大50までの複数回発生します(それぞれ50ページ以下の1ページです)。私はxlPasteValuesとxlPasteFormatsを使って50の範囲で事前にコピーされた画像を作りました(画像は同じですが、それぞれの範囲で同じ位置で繰り返されます)。ワークブックには少しのスペースがあり、使用されていない50個のコピー済みセットではなく、写真のコピーでベースサイズを調整したいと思っています。値、書式、および画像のコピー/貼り付け
「wksImportedPeakHour」はそのシートであるSet rngImportCopyRange = Range(wksImportedPeakHour.Cells(1, 1), wksImportedPeakHour.Cells(65, 34))
rngImportCopyRange.Copy
wksStartHere.Cells(intRowStartHere, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
rngImportCopyRange.Copy
wksStartHere.Cells(intRowStartHere, 1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
: -
以前のコードでは、この(私はすべての画像がすでにコピーされているために使用されるが、これはスペースを取ることが絵をコピーしない)ように見えました範囲がコピーされています(常に同じ場所にあり、必要のない列のデータがあります)。 "intRowStartHere"は、範囲を貼り付ける行を追跡する整数です。
私は "Application.CopyObjectsWithCells = True"をxlPasteFormatsの直前に追加しようとしましたが、それをしようとするとエラーが発生します。私はその後、すべてのものをコピーすることができ、今
rngImportCopyRange.Copy wksStartHere.Cells(intRowStartHere, 1)
:
次のコードをコピーし、すべてストレートコピー/貼り付け、他のブックの数式は、むしろ値(大丈夫ではない)よりも、あまりにもコピーされますセルの結合を解除(一部は細胞がマージされ、マージされたときに、私は特別なxlPasteValuesを貼り付けることはできませんされている)、そして値を貼り付け、その後、数式を貼り付ける - 次のようになります。
Set rngImportCopyRange = Range(wksImportedPeakHour.Cells(1, 1), wksImportedPeakHour.Cells(65, 34))
rngImportCopyRange.Copy wksStartHere.Cells(intRowStartHere, 1)
Set rngUnMerge = Range(wksStartHere.Cells(intRowStartHere, 1), wksStartHere.Cells(intRowStartHere + 64, 34))
rngUnMerge.UnMerge
rngImportCopyRange.Copy
wksStartHere.Cells(intRowStartHere, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
rngImportCopyRange.Copy
wksStartHere.Cells(intRowStartHere, 1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
しかし、上記有する3つのコピーであります/貼り付け操作とun-merge。私は、スクリプトが実行されない限り実行できないようにする特別な操作やトリックがあることを願っています。私はあなたの助けに感謝します、ありがとう!