![OOO: 下方向に記入するためのシートを増やす](https://rvso.com/image/1421887/OOO%3A%20%E4%B8%8B%E6%96%B9%E5%90%91%E3%81%AB%E8%A8%98%E5%85%A5%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E3%82%B7%E3%83%BC%E3%83%88%E3%82%92%E5%A2%97%E3%82%84%E3%81%99.png)
「sheet1」に、別のシートのセルのセットを参照するセルの行があります。シートのみを増分しながら、同一のセルのセットを下方向に入力したいと考えています。
問題を別の方法で説明すると、「フォーム」である他のシートを参照する行レコードのマスター テーブルがあります。「フォーム」シートのセルのセットをマスター シートのセルの行にコピーするにはどうすればよいでしょうか。
答え1
2 行を希望どおりに入力すると、複製するブロックを選択し、フィル ハンドルを使用して下にドラッグできるようになります。2 行を選択してドラッグすると、自動入力が非常に巧妙に機能します。多くの場合、変更内容が認識され、それが連続したものになります。
それが機能しない場合は、シート名を列に挿入し、他の数式に間接参照を使用できます。
答え2
[コピー元Excel: 相対ワークシート上のデータを参照するためのポータブルな数式。
次のマクロを作成します。
Function SHEET_OFFSET(Offset, Ref)
' Returns cell contents at Ref, in sheet Offset
Application.Volatile
With Application.Caller.Parent
SHEET_OFFSET = .Parent.Sheets(.Index + Offset) _
.Range(Ref.Address).Value
End With
End Function
見るMS Office に VBA を追加するにはどうすればよいですか? マクロの使用に関する一般的な情報。
次に、Sheet1 の参照を次のようにします。
A B C
1 =Sheet2!G17 =Sheet2!M42 =Sheet2!Q95 ...
2 =Sheet3!G17 =Sheet3!M42 =Sheet3!Q95 ...
︙ ︙ ︙
A1 をSHEET_OFFSET(ROW(), $G$17)
などに設定します。最初の引数は現在のシートを基準としたシート番号であり、2 番目の引数はセル参照です。