[[20061027115220]] 『複数シートのセルの抽出』(エイミー) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『複数シートのセルの抽出』(エイミー)
 シートが複数あり、ある決まったセルのみを抽出し、新たなシートに一覧表を作成したい
 のですが。。。教えて下さい。

 例)
 シートAのセルB2欄には”AA1”とB3欄には”BB1”
 シートBのセルB2欄には”AA2”とB3欄には”BB2”
 シートCのセルB2欄には”AA3”とB3欄には”BB3”

 がそれぞれ入力されているとして、

 新たなシートDに
 AA1  BB1
 AA2  BB2
 AA3  BB3

 の一覧表を作成したい
 宜しくお願い致します。


 =シートA!B2  =シートA!B3
   AA1      BB1

 =シートB!B2  =シートB!B3
   AA2      BB2

 =シートC!B2  =シートC!B3
   AA3      BB3

 ということでしょうか?
 抽出条件も考慮した式をお望みなのでしょうか?

 (Ohagi)


早速ありがとう御座います。
シートが100個位あり、上記の式を入れるのが面倒なんです。
何か良い方法ありませんか?


 シートDの構成はどうなるのですか?
 一覧表となっていましたので、
 複数のセルを参照させたいのは分かりますが…
 抽出元のセル番地と抽出先のセル番地に一貫性はあるのでしょうか?

 >ある決まったセルのみを抽出
 何を条件にすると「決まったセル」になるのでしょうか?

 一行目が、シートA B列
 二行目が、シートB B列
 三行目が、シートC B列
 行番号 = 列数
 シートDのA1セルから入力であったなら

 A1 =INDIRECT("シートA!B"&COLUMN()+1)
 A2 =INDIRECT("シートB!B"&COLUMN()+1)
 A3 =INDIRECT("シートC!B"&COLUMN()+1)
 として、横にコピー

 シート名の一覧を取得して参照させたらいかがです?
[[20040712163424]]『複数シートのシート名と特定セルの内容をリストに』(taka) 

 (Ohagi)


 ベタベタなんですが
 各シートのB2,B3のデータをDシートへ

 Sub Test()
 Dim myShi As Worksheet
 For Each myShi In Worksheets
    If myShi.Name <> "D" Then
        With Worksheets("D").Range("A65536")
            .End(xlUp).Offset(1, 0).Value = myShi.Range("B2").Value
            .End(xlUp).Offset(0, 1).Value = myShi.Range("B3").Value
        End With
    End If
 Next
 End Sub
 (kyoko)

すばらしい!できました!
ありがとう御座いました!

横から便乗しましてすみません。
kyokoさんので私も参考にさせて頂き助かりました。

逆バージョンはできないかと
検索してみましたが、まだまだ勉強不足のためこれぞというものがみつけられません。

エイミーさんのを例にさせて頂きますと、
もともとシートDの一覧になっているものが最初に用意されているとして

それぞれのシートの決められた箇所(ここでいうとB2,B3でしょうか)に

値がいくようになるマクロはありますでしょうか。

どなたかよろしくお願いいたします!(みきたん)


 数式ですが・・・。

 ↓「表」シートの状態
	[A]	[B]	[C]
[1]	シート名	B1へ	B2へ
[2]	シートA	AAA	AAAA
[3]	シートB	BBB	BBBB

 シートA,シートBの
 B1セルへ
=VLOOKUP(MID(CELL("FILENAME",A1),FIND("]",CELL("FILENAME",A1))+1,LEN(CELL("FILENAME",A1))),表!A:C,2,FALSE)
 B2セルへ
=VLOOKUP(MID(CELL("FILENAME",A1),FIND("]",CELL("FILENAME",A1))+1,LEN(CELL("FILENAME",A1))),表!A:C,3,FALSE)

 各シートへは、作業グループにして入力すると
 一度で入力出来ると思います。
 テスト試行は、保存してあるブックでなさって下さい。

 解決できない様で有れば、
 新たにスレをたてられるのが宜しいかと思います。

 (HANA)


恐れ入ります、便乗で教えていただきたいのですが、

kyokoさんの↓

Sub Test()

 Dim myShi As Worksheet
 For Each myShi In Worksheets
    If myShi.Name <> "D" Then
        With Worksheets("D").Range("A65536")
            .End(xlUp).Offset(1, 0).Value = myShi.Range("B2").Value
            .End(xlUp).Offset(0, 1).Value = myShi.Range("B3").Value
        End With
    End If
 Next
 End Sub

これで非常に助かりました。ありがとうございました。
ひとつ質問なんですが、串刺し計算の為に、先頭に空のワークシートAと
「集計」(上記で言う所のDシート)の前に空のワークシートBを用意し、
この空のワークシート間でのみシートを増幅させ、計算式を守っています。

現在、一覧には全てのワークシートが反映されてしまいますので、
この空のワークシート2枚を除外させる方法を
教えていただけませんでしょうか。
仮に名前を「空のワークシートA」「空のワークシートB」とします。

やっとマクロに足を踏み入れたばかりの初心者です。

何卒お力をお貸し下さいませ。
宜しくお願いします。
(JUJU)


 And で条件をつなげます。

 If myShi.Name <> "A" And myShi.Name <> "B" Then

 (ROUGE)

ROUGE様

早速のレスありがとうございました。
お陰様でうまく実行できました。ありがとうございました!
(JUJU)


失礼します。初心者です。
複数シートのセルの抽出でkyokoさんの

Sub Test()

 Dim myShi As Worksheet
 For Each myShi In Worksheets
    If myShi.Name <> "D" Then
        With Worksheets("D").Range("A65536")
            .End(xlUp).Offset(1, 0).Value = myShi.Range("B2").Value
            .End(xlUp).Offset(0, 1).Value = myShi.Range("B3").Value
        End With
    End If
 Next
 End Sub
 こちらで、自分のシートにもB2、B3に当てはまるセルを
別シートに一覧表示させることができました。
さらに、50程度のセルを別シートに一覧表示させたいと思っています。

B2の情報は別シートのA2から下に、
B3の情報は別シートのB2から下に一覧となって表示されました。

ということは、B4、B5、C1、・・・は別シートのC2、D2、・・・
というふうに表示できるのかと考えています。

また、もうひとつ、可能でしたら教えていただきたいのは、
元のシート群には、
B2に情報が入っている場合と入っていない場合があり、
できた表をみたところ、
情報が入っていないセル分は上に詰められてしまっているようです。
情報が入っていないセルも空のまま一覧に表示させる方法は
ありますでしょうか。

どなたか教えていただけたらうれしいです。



 このスレは大人気ですね。
   どこかにリンクでも有るのかな??
   Google先生のキャンペーン?

 >元のシート群には、 B2に情報が入っている場合と入っていない場合があり
 と言う事であれば、ロジックを少し変えた方が良いのではないかと思います。

 長くなってこのスレ自体も読みにくくなって仕舞うといけませんので
 新規で質問をされるのが良いと思います。

 同じ様な質問を探してみると、もっと適したサンプルが見つかると思います。
 新規で質問をする事に抵抗が有るなら、探してみられても良いかもしれません。

 (HANA) 2012/02/09

 2006年のスレ・・。

アドバイスありがとうございます。
複数シートのセルの抽出という検索を考えつくのにも数か月かかっていて、
やっとヒットしていい感じにできたので、ついでにと思ってしまいました。
失礼しました。確かに、2006年、古いですね。

こちらを引用?する感じで新規で質問してみたいと思います。


 nさんは↓こちらで新規で質問されました。
[[20120209133706]] 『複数シートのセルの抽出A』(n)

 (HANA)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.