- ベストアンサー
EXCEL2003でデータリンクを使いたい方法
- EXCEL2003を使っていますが、shee1の結合セルにデータリンクを掛けたい方法が知りたいです。
- 具体的には、shee1のA列、B列、C列にそれぞれリンクを設定したいです。
- どのようにすれば、sheet2のA、B、C列のデータをshee1の結合セルにリンクできるのか教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! ↓の画像で左側がSheet1で右側がSheet2です。 画像のような感じになればよいのですかね? そうだとすると・・・ 関数でやる場合は行合わせさえしっかり行えばINDEX関数で対応できると思います。 Sheet1のA5セル(A5~A8結合セル)に =INDEX(Sheet2!A:A,ROW()-3*(INT((ROW()-1)/4))) という数式を入れ、列方向と行方向にオートフィルでコピーしています。 ただ2400行目までオートフィルするのも大変ですし、わざわざ関数で行合わせに手間を取らない方法としては VBAでやる方法もあります。 その一例も載せておきます。 画面左下のSheet1のSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub test() 'この行から Dim i, j, k As Long Dim ws As Worksheet Set ws = Worksheets("Sheet2") k = 5 For i = 2 To ws.Cells(Rows.Count, 1).End(xlUp).Row For j = 1 To 3 With Range(Cells(k, j), Cells(k + 3, j)) .Merge .Value = ws.Cells(i, j) .HorizontalAlignment = xlCenter End With Next j k = k + 4 Next i End Sub 'この行まで ※ Sheet2のデータ最終行まですべてを表示するようにしています。 ※ マクロの場合はSheet1のセル結合してなくても対応できるようにしています。 (もちろんセル結合していても問題ありません) 参考になりますかね?m(_ _)m
その他の回答 (1)
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
shee1のA5:A8の結合セルに次の式を入力してください。 =indirect("sheet2!a"&(row()-1)/4+1) B列については、「sheet2!a」を「sheet2!b」に書き換えてください。最後に、これらの結合セルをコピーし、各列2,400行目までに貼り付けます。
お礼
ありがとうございました。希望通りのものが出来ました