- 締切済み
エクセルのリンクについて? part2
Sheet1表のA1セルに 別ファイル「勤怠実績表.xls」の(勤怠実績表6月分)表のK4のセルを参照する =[勤怠実績表.xls]勤怠実績表6月分!$J$4 式を埋め込みました。 別ファイル「勤怠実績表.xls」の(勤怠実績表7月分)表のK4のセルを参照する =[勤怠実績表.xls]勤怠実績表7月分!$J$4 という風に埋め込みました。 Sheet1表のA3に今度は8月と埋め込みたいのですが、いちいち手動でリンクを設定するのが手間です。 これを簡単にやる方法はないでしょうか? どなたかご回答お願いします。 またこういう事をするのは難しいなどご意見も頂ければと思います。 宜しくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
No.1です。式は回答からコピーして使いましたか? 私の環境ではきちんと表示されますので、あなたの提示している条件に抜けがあるのではないでしょうか。 たとえば、参照元と参照先のファイルは同じフォルダにありますか? 参照するのはK4ですか? J4ですか? この式は自分のあるセルの行数から月数を生成していますから、式そのものは変わらなくても問題ありません。 つまり、6月分は必ず1行目になくてはいけません。1行目以外にある場合は、「ROW()+n」の「n」の値を変えなくてはいけません。「6月分の式のある行数+n」が、最初の式は6、次の式は5になるようにします。
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答2です。 ごめんなさい。次の式をA1セルに入力してください。 =INDIRECT("[勤怠実績表.xls]勤怠実績表"&IF(MOD(ROW(A6),12)=0,12,MOD(ROW(A6),12))&"月分!$J$4")
- KURUMITO
- ベストアンサー率42% (1835/4283)
先ほどの式の応用ですね。 A1セルに次の式を入力し、下方にオートフィルドラッグします。 =INDIRECT("[勤怠実績表.xls]勤怠実績表"&IF(MOD(ROW(A1),12)=0,12,MOD(ROW(A6),12))&"月分!$J$4")
必ずA1から始まり、上から順に6月、7月、8月と並んでいるのなら、下の式でをA1に入力し、下へコピーしてください。 =INDIRECT("[勤怠実績表.xls]勤怠実績表"&ROW()+5&"月分!$J$4") もし、12月の次が1月になっている場合は、次の式で。 =INDIRECT("[勤怠実績表.xls]勤怠実績表"&MOD(ROW()+4,12)+1&"月分!$J$4") ただし、INCIRECT関数はリンク先のファイルを開いていないとエラーになります。
補足
ご回答ありがとうございます。 上記の通り式を入力し、試してみたのですが、うまくいきません・・。 リンク先が開いているのですが、エラーが表示されてしまっています。 また下へドラッグしコピーをしたのですが、式にも変化がないので、このままだと同じ値が参照されないですか?
補足
ご回答ありあとうございます。 うまくできました。本当にありがとうございました!