[[20081218145320]] 『データを品名別に別シートに自動的に入力したい』(山田) >>BOT

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

 

『データを品名別に別シートに自動的に入力したい』(山田)

 Excel2003です

 A1      B1      C1      D1      E1
 品名 仕入先 注文日 入荷日 販売日

 をseet1に入力(全部のデータをseet1に入れたい)
 これを品名毎に seet2 seet3に 自動的に入るようにするには
 どうしたらできるのでしょうか

 「別シート」のシート名が
 品名と一致しているなら、

 ThisWorkbookのモジュールに以下を貼り付け。
 '------
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Dim i As Long, ii As Long, xr As Long
    Dim asn As String, tbl, x
 
    If ActiveSheet.Name = "seet1" Then Exit Sub
 
    asn = ActiveSheet.Name
    tbl = Sheets("seet1").Range("A1").CurrentRegion
    ReDim x(1 To UBound(tbl, 1), 1 To 5)
    For i = 2 To UBound(tbl, 1)
        If tbl(i, 1) = asn Then
            xr = xr + 1
            For ii = 1 To 5
                x(xr, ii) = tbl(i, ii)
            Next
        End If
    Next
 
    Range("A1").CurrentRegion.Offset(1).ClearContents
    If xr = 0 Then
        MsgBox "データがありませんでした。"
    Else
        Range("A2").Resize(xr, 5) = x
    End If
End Sub
 '------

 ↓数式で処理する方法が載っていますのでこちらも参考になりそうに思います。
[[20081216163656]]『seet1にあるデータから条件に合うものをseet2に表示させる』(斉木)
 その他、この手の話は割と頻繁にあるイメージがありますので
 過去ログを探してみられても良いかもしれませんね。

 (HANA)

コメント返信:

[ 一覧(最新更新順) ]


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