| すみません。混乱しています。説明不足、ひどい言葉遣いかもしれません。ごめんなさい。
例えばですが、 sheet1
会員番号 氏名 科目 得点 abc-123456 あらた 国数 250 abc-345678 さきた 英国 372 abc-234567 こくら 英数 215 abc-456789 さささ 英英 300
※sheet1のデータは集計時によって 増減があります。
sheet2 会員番号 会員番号 <>abc-123456 <>abc-234567
※sheet2の列はどんどん増えるとします。 集計時によって増減がある場合。
sheet3←集計結果をだしたい 会員番号 氏名 科目 得点 abc-345678 さきた 英国 372 abc-456789 さささ 英英 300
以下のようなマクロの記録に足して書きました。 Sub test1() Dim gyo as long gyo =sheets("Sheet1").Cells(1, 1).End(xlDown).Row
Range(cells(1, 1),cells(gyo, 4)).Select Range(cells(1, 1),cells(gyo, 4)).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets( _ "Sheet2").Range("A1:B2"), CopyToRange:=Range("A20"), Unique:=False End Sub
-----
ここでわからないのが、sheet2の最終列の指定方法です。 Dim retu as long retu =sheets("Sheet2")Cells(1, 1).End(xlToRight).Column
で、表せると思うのですが、
CriteriaRange:=Sheets( _ "Sheet2").Range("A1:B2"), CopyToRange:=Range("A20"), Unique:=False
に、どうやってあてはめていいのかわからない。
"Sheet2").Range("A1:B2")をcellsに置き換えればいいのかしら?
一番最初の Range(cells(1, 1),cells(gyo, 4)).Select も、本来はsheet1を指定しないといけないのかな??その指定方法はどうすれば・・・
|