Java 根据同一手册中的工作表1筛选工作表2数据
我正在尝试根据同一工作簿(MS Excel)中的工作表1数据筛选工作表2数据。这是我的要求,我在第一个工作表中有数据,其中包含100条记录,并以员工Id为键,但此工作表将包含与员工个人信息相关的数据,如姓名、年龄。然而,第二页将包含该特定员工的更多信息,如经验详情。所以,我想为用户提供一个功能,用户点击员工ID,然后它将重定向到另一个带有过滤数据的工作表 以下是在同一工作簿的两个不同工作表中提供的示例数据: 第1页: 姓名|员工ID |年龄|性别| ABC | 123 | 23 | M |Java 根据同一手册中的工作表1筛选工作表2数据,java,excel,filter,worksheet,Java,Excel,Filter,Worksheet,我正在尝试根据同一工作簿(MS Excel)中的工作表1数据筛选工作表2数据。这是我的要求,我在第一个工作表中有数据,其中包含100条记录,并以员工Id为键,但此工作表将包含与员工个人信息相关的数据,如姓名、年龄。然而,第二页将包含该特定员工的更多信息,如经验详情。所以,我想为用户提供一个功能,用户点击员工ID,然后它将重定向到另一个带有过滤数据的工作表 以下是在同一工作簿的两个不同工作表中提供的示例数据: 第1页: 姓名|员工ID |年龄|性别| ABC | 123 | 23 | M | BC
BCD | 234 | 25 | F |
第2页: 员工ID |以前的公司|经验 123 | Ace | 4
123 |技术| 5
234 | Ace | 4
如果我点击表1中的123,它会将我重定向到表2,并只过滤123条记录
如果有人知道答案,请在我需要用Java代码构建此功能时尽快回复。但是,在开始编写代码之前,我应该知道是否可以使用excel。我假设您的Sheet1数据从A1单元格开始,
员工ID
位于列b
我还假设sheet2数据从单元格A1开始,员工ID
位于列A
使用以下子项根据sheet1员工id筛选sheet2的数据。使用sheet1
工作表中的代码\u Change
事件不在sheet2
如何使用:您必须
双击Sheet1员工ID
单元格中的,然后按输入
或选项卡
键
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LastUsedRow As Long
Dim FilterCriteria As Variant
If Not Application.Intersect(Target, Range("B1:B10")) Is Nothing Then
FilterCriteria = Target.Value
LastUsedRow = Sheets("Sheet2").Range("A1").End(xlDown).Row
Sheets("Sheet2").Range("A1:C" & LastUsedRow).AutoFilter Field:=1, Criteria1:=FilterCriteria
Sheets("Sheet2").Select
End If
End Sub
有关更多说明,请参见下面的屏幕截图
是否只从下拉列表中选择一个id,然后它将自动显示与sheet2中的id相关的所有数据?否,当用户单击员工id值的单元格时,我想过滤sheet2中的数据。例如,如果用户单击sheet1中员工Id为123的单元格,则会将其重定向到sheet2,并使用员工Id为123的筛选数据。请确保双击员工Id单元格,然后按ENTER
或TAB
键<代码>(目标,范围(“B1:B10”))
根据您的实际范围更改此处的范围。