[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『1000シートのA1を一つのシートに纏める』(RK)
[シートのA1に、名前が入っています。1000シートそれぞれに違う名前が
入っています。その名前全てを、一つのシートに纏めることは出来ますか?
1セルに1人分の名前が表示されるようにしたいんです。よろしくお願いします。]
エクセルで1000ものシートを扱うのが適当かどうかは疑問がありますが、 それはともかくご質問の場合は、それぞれのシート名に連番がついているような場合であれば、 関数での抜き出しができます。
例えば、Sheet1のA2セルにSheet2のA1セル、A3セルにSheet3のA3セルを表示するには、 Sheet1のA2セルに
=INDIRECT("Sheet"&ROW()&"!A1")
として、下にコピーすればできます。
シート名に番号が含まれていない場合は関数では無理かと思います。 VBAであれば可能かと思いますが、それは私の得意分野ではないので、 他の方からのご回答をお待ち下さい。 (sato)
勘違い・・・ 削除します。 (キリキ)m(_ _)m
マクロで作ってみました。 うまくいけば良いのですが、、、
集計シートというシートを用意してください。 集計シートのA1から下に名前が入ると思います。
標準モジュールにコピペ '------------------------ Sub test() Dim Sh As Worksheet, S_Sh As Worksheet Dim MyA() As Variant Dim i As Long, n As Long n = Worksheets.Count - 1 ReDim MyA(1 To n) Set S_Sh = Worksheets("集計シート") For Each Sh In Worksheets If Sh.Name <> S_Sh.Name Then i = i + 1 MyA(i) = Sh.Range("A1").Value End If Next Sh S_Sh.Range("A:A").Clear S_Sh.Cells(1, 1).Resize(n).Value = Application.Transpose(MyA) End Sub
(キリキ)(;⌒o⌒)b
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.