3

ここで多くの問題が発生しています...コピーすると、正確に同じ場所に貼り付けていないため、めちゃくちゃになります。カットすると、情報のブロックが失われます。= を実行すると、クリックしてドラッグすると、コピーしているセルが実際には参照であるため、めちゃくちゃになります。そのため、これらの参照を並べ替えると、悪いニュースが発生します。IE Sheet1 A1:E5 = data1 情報 Sheet2 Q5:U9 = 'Sheet1'!A1:A5

シート 3 では、シート 2 がセットアップされているため、シート 1 から直接移動することはできません (並べ替えのため)。これは少し紛らわしいですが、TL;DR、セルを削除せずに「カット」をエミュレートする方法はありますか? .

4

4 に答える 4

3

Paste Specialを試してみましたか?

  1. コピーするセルを強調表示します。
  2. 右クリック -> コピーまたは CTRL-C でセルをコピーします。
  3. 情報を貼り付ける新しいセルの場所にカーソルを移動します。
  4. セルを右クリックして、* 形式を選択して貼り付けオプションを見つけます。
  5. あなたがおそらく探しているのは、[値の貼り付け] の下のオプションです。

Excel 2010 を使用している場合 (2007 に当てはまる場合もあります)、実際に貼り付ける前に貼り付けの効果を確認できます。

ここで、シート 1 のセルへの参照をコピーに残す必要がある場合は、JAB が指摘したように、セルの前に $ を追加する必要があります。その後、[形式を選択して貼り付け] -> [数式]を実行できます。

考えられる単純な VBA コード:

Sub ConvertUserRangeToAbsolute()
    Dim cell As Object
    For Each cell In Selection
        cell.Formula = Application.ConvertFormula(Formula:=cell.Formula, fromreferencestyle:=Application.ReferenceStyle, toabsolute:=xlAbsolute)
    Next cell
End Sub

変更されたソース: http://www.mrexcel.com/forum/excel-questions/29368-visual-basic-applications-change-formula-relative-absolute-reference.html#post134975

お役に立てれば。

于 2013-06-14T13:44:05.083 に答える
1

数式の移動先に関係なくセル参照を一定にする必要がある場合は$A$1:$A$5、範囲のようなものを使用して、行と列を所定の位置に固定します。(これ$は、[行または列のいずれか] に続くインデックスの値を調整しないように Excel に指示するものです。そのため、セル A1 に範囲を参照する数式がある場合、$C3:$C19その数式をセル B2 にコピーすると、数式は次のようになります。範囲を参照$C4:$C20し、範囲がC$3:C$19数式をセル B2 にコピーしている場合は、範囲を参照している数式になりD$3:D$19、使用$C$3:$C$19すると参照範囲は変更されません)。

R1C1 表記の使用を検討することもできますが、それは必要ないと思います。

于 2013-06-14T13:18:00.080 に答える