• 締切済み

【至急】Excelリンクで別シート情報抽出

sheet1のプログラムID AAAにリンクを張って、sheet2のプログラムID AAAのみを検索して抽出するにはどうすればよいでしょうか。 ■sheet1 A列 プログラムID AAA ■sheet2 A列     B列      C列 課題ID 1 プログラムID AAA  10 課題ID 2 プログラムID BBB  20 課題ID 3 プログラムID AAA  30 課題ID 4 プログラムID CCC  40 リンクした結果のsheet2の見え方は以下です。 ■sheet2 A列     B列      C列 課題ID 1 プログラムID AAA  10 課題ID 3 プログラムID AAA  30 合計:40

みんなの回答

  • eden3616
  • ベストアンサー率65% (267/405)
回答No.4

リンクなので「ハイパーリンク」を用いて、「見え方」なのでデータは残しつつ、該当する行のみ表示する方法で行います。 詳しくは添付図参照願います。 (1)「Sheet1」のシートタブを右クリックして「コードの表示」でVBEを開き、 下記のコードを貼り付けてください。 Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)     Dim hideRows As Range, i As Long     With Worksheets("Sheet2")         .Rows.Hidden = False         If Target.Range.Value = "再表示" Then Exit Sub         For i = 1 To .Cells(.Rows.Count, "A").End(xlUp).Row             If .Cells(i, "B") <> Target.Range.Value Then                 .Rows(i).Hidden = True             End If         Next i     End With End Sub (2)Sheet1のA列に記載したセルにハイパーリンクを設定してください。 リンク先は「このドキュメント内」より「Sheet2」を選んでください。 (3)A列のリンクをクリックすると、Sheet2に切り替わり、 B列に一致した行のみ表示されます。 ================ Sheet1のどこでも構わないので「再表示」と入力したセルに同様にSheet2へのハイパーリンクを設定し、クリックするとSheet2で非表示になった行が全て再表示されるように作っています。 Sheet名や検索対象の列が変わる場合はコード内の「Sheet2」「B」「再表示」を変更してください。

回答No.3

オートフィルタをかけてやれば解決では?     If TypeName(Worksheets("Sheet2").AutoFilter) = "Nothing" Then         Worksheets("Sheet2").Range("$A$1:$C$5").AutoFilter     End If     Worksheets("Sheet2").Range("$A$1:$C$5").AutoFilter _                 Field:=2, _                 Criteria1:=Worksheets("Sheet1").Range("A1") どんなタイミングで走らせるかはお好みでどうぞ。 あぁ、すいません。 > sheet1のプログラムID AAAにリンクを張って 「リンクを張る」という意味が解らなかったので、 「Sheet1のA1セルをキーにしてフィルタ」という処理にアレンジしてしまいました。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.2

こんにちは Sheet2の1行目に項目名をセットして、オートフィルターを掛けておいて、 Sheet2を開いた時に課題を、Sheet1のセルA1?の値で絞り込むように イベントマクロを設定するのはどうですか?

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.1

リンクした結果を別の Sheet3 に出しても良ければ、… Sheet3!A2: =IFERROR(INDEX(Sheet2!A:A,SMALL(IF(Sheet2!$B$1:$B$100=Sheet1!$A$1,ROW(A$1:A$100),""),ROW(A1))),"") Sheet3!C1: =SUM(C2:C101) 【お断り】Sheet3!A2 の式は、必ず配列数式として入力のこと

関連するQ&A