web-dev-qa-db-ja.com

Excel VBAの挿入時のCopyOrigin

誰かがInsertのCopyOriginパラメータの用途を教えてもらえますか?そして、それはどのような値を受け入れますか?

私はvbaヘルプを含めました(これはそれほど役に立ちませんでした):

セルまたはセルの範囲をワークシートまたはマクロシートに挿入し、他のセルをずらしてスペースを空けます。

expression.Insert(Shift、CopyOrigin)式必須。 Rangeオブジェクトを返す式。

シフトオプションバリアント。セルをシフトする方法を指定します。次のXlInsertShiftDirection定数のいずれかになります:xlShiftToRightまたはxlShiftDown。この引数を省略すると、Microsoft Excelは範囲の形状に基づいて決定します。

CopyOriginオプションのバリアント。コピー元。

19
Craig T

以下のように、1つのパラメーターのいずれかを取ります。

Const xlFormatFromLeftOrAbove = 0

Member of Excel.XlInsertFormatOrigin

そして...

Const xlFormatFromRightOrBelow = 1

Member of Excel.XlInsertFormatOrigin
22
lakshmanaraj

Lakshmanarajのコメントへの追加-セルを挿入する場所と選択するフォーマットに応じて、フォーマットオプションを選択します。

あなたが持っているとしましょう:
最初の行は太字のテキスト、
2行目は斜体で表示されています。
2行目を選択して、次の式を実行します。

Selection.Insert CopyOrigin:=xlFormatFromLeftOrAbove

新しい行が1行目と2行目の間に挿入され、「上の行」または「セルの左側のセル」からフォーマットルールが選択されます。

この場合、新しく挿入されたセルには、明示的に設定しなくてもテキストが太字で表示されます。

20
shahkalpesh