行をスキップする数式を自動入力するにはどうすればいいですか

行をスキップする数式を自動入力するにはどうすればいいですか

Excel マスター シートから別の Excel ファイルにデータをドラッグしようとしていますが、行ごとに数字がスキップされます。

私がやろうとしているのはこれです

='[MASTER ITEM LIST 2024.xlsx]'!$E15+'[MASTER ITEM LIST 2024.xlsx]'!$E16

='[MASTER ITEM LIST 2024.xlsx]'!$E17+'[MASTER ITEM LIST 2024.xlsx]'!$E18

='[MASTER ITEM LIST 2024.xlsx]'!$E19+'[MASTER ITEM LIST 2024.xlsx]'!$E21

オートフィル中に次のことが発生します

='[MASTER ITEM LIST 2024.xlsx]'!$E15+'[MASTER ITEM LIST 2024.xlsx]'!$E16

='[MASTER ITEM LIST 2024.xlsx]'!$E16+'[MASTER ITEM LIST 2024.xlsx]'!$E17

='[MASTER ITEM LIST 2024.xlsx]'!$E17+'[MASTER ITEM LIST 2024.xlsx]'!$E18

線を2倍にしてスキップパターンを認識させようとしましたが、結果はこうなりました

='[MASTER ITEM LIST 2024.xlsx]'!$E15+'[MASTER ITEM LIST 2024.xlsx]'!$E16

='[MASTER ITEM LIST 2024.xlsx]'!$E17+'[MASTER ITEM LIST 2024.xlsx]'!$E18

='[MASTER ITEM LIST 2024.xlsx]'!$E17+'[MASTER ITEM LIST 2024.xlsx]'!$E18

='[MASTER ITEM LIST 2024.xlsx]'!$E19+'[MASTER ITEM LIST 2024.xlsx]'!$E21

='[MASTER ITEM LIST 2024.xlsx]'!$E19+'[MASTER ITEM LIST 2024.xlsx]'!$E21

='[MASTER ITEM LIST 2024.xlsx]'!$E21+'[MASTER ITEM LIST 2024.xlsx]'!$E23

答え1

INDIRECT()関数を使用して解決する 1 つの方法を次に示します。

ここに画像の説明を入力してください


• セルで使用されている数式A1

=INDIRECT("'[MASTER ITEM LIST 2024.xlsx]Sheet1'!$E"&(ROW()*2-1)+14)+
 INDIRECT("'[MASTER ITEM LIST 2024.xlsx]Sheet1'!$E"&ROW()*2+14)

または、もう少し短く:

=SUM(INDIRECT("'[MASTER ITEM LIST 2024.xlsx]Sheet1'!$E"&(ROW()*2+{-1,0})+14))

注記:#REF!上記の数式は、数式が入力されたファイルで作業しているときにが開かれていない場合、エラーを返します。MASTER ITEM LIST 2024.xlsx両方のファイルが開いている限り機能します。

また、もう 1 つの欠点は、使用される関数です。INDIRECT()関数は本質的に揮発性であり、開いているブックに変更があるたびに常に再計算されます。また、シングル スレッドであるため、Excel の動作機能が低下します。2 番目の方法を使用する場合は、バージョンに応じて、編集モードを終了するときに+ +INDIRECT()を押す必要があります。CTRLSHIFTENTER


1 つの代替案は、関数にTOCOL()+ を使用することです。WRAPROWS()BYROW()

ここに画像の説明を入力してください


• セルで使用されている数式A1

=LET(
     x, TOCOL('[MASTER ITEM LIST 2024.xlsx]Sheet1'!$E:$E,1),
     y, ROWS(x),
     BYROW(WRAPROWS(IF(ISEVEN(y),x,VSTACK(x,0)),2),SUM))

上記の式はsharedで機能しますが、 inOffice Insidersで機能させるには、Current Channel UsersMS365LAMBDA()

=LET(
     x, TOCOL('[MASTER ITEM LIST 2024.xlsx]Sheet1'!$E:$E,1),
     y, ROWS(x),
     BYROW(WRAPROWS(IF(ISEVEN(y),x,VSTACK(x,0)),2),LAMBDA(a,SUM(a))))

関連情報