Trong hướng dẫn ngắn gọn này, bạn sẽ học cách áp dụng bộ lọc trong Excel bằng cách sử dụng Java với sự trợ giúp của phương pháp tiếp cận từng bước đơn giản. Bạn có thể đặt bộ lọc tự động trong trang tính trên tất cả các cột dữ liệu trong một dải ô mong muốn, sau đó áp dụng bộ lọc đối với một dữ liệu cụ thể trong bất kỳ cột nào. Cuối cùng, tệp đầu ra được lưu dưới dạng tệp XLSX, tuy nhiên, bạn cũng có thể lưu tệp đó ở bất kỳ định dạng tệp Excel nào khác.
Các bước để áp dụng bộ lọc trong Excel bằng Java
- Thêm tham chiếu thư viện Aspose.Cells bằng kho lưu trữ Maven
- Thêm tham chiếu vào các lớp Workbook, Worksheet và Cells bằng cách sử dụng lệnh Nhập trong chương trình
- Khởi tạo một đối tượng sổ làm việc trống
- Nhận tham chiếu đến trang tính đầu tiên nơi dữ liệu mẫu sẽ được thêm vào
- Sử dụng bộ sưu tập ô trong trang tính, điền dữ liệu mẫu vào trang tính
- Áp dụng bộ lọc dữ liệu trong Excel trên phạm vi ô mong muốn
- Đặt bộ lọc cụ thể trên cột đầu tiên đối với dữ liệu cụ thể
- Lưu tệp kết quả dưới dạng XLSX
Tại đây, một sổ làm việc trống được tạo có chứa một số dữ liệu mẫu. Tham chiếu đến bộ sưu tập ô trong trang tính được lấy và phạm vi được đặt cho bộ lọc trên trang tính Excel này. Cuối cùng, một bộ lọc được áp dụng trên một dữ liệu cụ thể để khi tệp đầu ra được mở, nó sẽ hiển thị dữ liệu đã lọc theo mặc định.
Mã để tạo bộ lọc trong Excel bằng Java
import com.aspose.cells.License; | |
import com.aspose.cells.Cells; | |
import com.aspose.cells.Workbook; | |
import com.aspose.cells.Worksheet; | |
public class ApplyFilterInExcelUsingJava { | |
public static void main(String[] args) throws Exception { //main function for ApplyFilterInExcelUsingJava | |
// Initialize a license to avoid trial version limitation after applying filter in Excel | |
License license = new License(); | |
license.setLicense("Aspose.Cells.lic"); | |
// Create an empty Excel workbook to fill sample data | |
Workbook FilteringDataWorkbook = new Workbook(); | |
// Get the first worksheet that is created by default in the workbook | |
Worksheet FilteringDataSheet = FilteringDataWorkbook.getWorksheets().get(0); | |
// Get access to the cells collection in the target worksheet | |
Cells FilteringDataCells = FilteringDataSheet.getCells(); | |
// Put sample data values into the cells | |
FilteringDataCells.get("A1").putValue("Fruits"); | |
FilteringDataCells.get("B1").putValue("Total"); | |
FilteringDataCells.get("A2").putValue("Blueberries"); | |
FilteringDataCells.get("B2").putValue(2500); | |
FilteringDataCells.get("A3").putValue("Apples"); | |
FilteringDataCells.get("B3").putValue(1100); | |
FilteringDataCells.get("A4").putValue("Mangoes"); | |
FilteringDataCells.get("B4").putValue(1500); | |
FilteringDataCells.get("A5").putValue("Grapes"); | |
FilteringDataCells.get("B5").putValue(1200); | |
FilteringDataCells.get("A6").putValue("Oranges"); | |
FilteringDataCells.get("B6").putValue(3000); | |
// Set the data range for which auto-filters are to be applied | |
FilteringDataSheet.getAutoFilter().setRange("A1:B6"); | |
// Add the desired filter to first column to select your desired data | |
FilteringDataSheet.getAutoFilter().addFilter(0, "Grapes"); | |
FilteringDataSheet.getAutoFilter().refresh(); | |
// Save output Excel file as XLSX | |
FilteringDataWorkbook.save("FilteredData.xlsx"); | |
} | |
} |
Trong mã mẫu này, một bộ lọc được áp dụng trên một trong các cột, tuy nhiên, bạn có thể đặt bộ lọc trên nhiều cột trong Excel dựa trên các giá trị tương ứng trong cột đó. Tại đây, nếu bạn muốn lưu tệp đầu ra sang một số định dạng khác như XPS, bạn có thể tham khảo bài viết trên cách chuyển đổi Excel sang XPS trong Java.
Ngoài ra, lưu ý rằng không yêu cầu thành phần hoặc thư viện nào khác như Interop hoặc MS Excel để chạy đoạn mã trên.