ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีอัปเดตไฟล์ Excel ใน Java แม้ว่าเราจะสามารถอัปเดตไฟล์ Excel ใน MS Excel ด้วยตนเองได้ อย่างไรก็ตาม การอัปเดตไฟล์ Excel ด้วยตนเองอาจเป็นไปไม่ได้หรือเป็นไปได้เสมอไป กล่าวคือ ข้อมูลขนาดใหญ่จะต้องได้รับการอัปเดต หรือข้อมูลจะถูกส่งออกจากแหล่งอื่น เช่น ฐานข้อมูล ความต้องการวิธีอัตโนมัติในการปฏิบัติงานนี้เกิดขึ้นที่นี่ ซึ่งคุณสามารถทำได้โดยใช้ขั้นตอนในคำแนะนำนี้ ต่อไปนี้เป็นขั้นตอนในการอัปเดตไฟล์ Excel ใน Java และสุดท้ายให้บันทึกเป็นรูปแบบ Excel โดยพูดว่า XLSX ในบทช่วยสอนนี้
ขั้นตอนในการอัปเดตไฟล์ Excel ใน Java
- ใช้ที่เก็บ Maven เพิ่มการอ้างอิงไปยังไลบรารี Aspose.Cells ในโครงการ
- เพิ่มการอ้างอิงถึงคลาส Workbook และ Cell โดยใช้ Import ในโปรแกรม
- โหลดสมุดงานที่จะปรับปรุง
- รับการอ้างอิงไปยังเซลล์ที่ต้องการในชีตแรกและอัปเดตค่าเซลล์เป้าหมาย
- รับการอ้างอิงไปยังเซลล์อื่นในแผ่นงานที่สองและอัปเดตสูตรในเซลล์
- เรียกใช้ฟังก์ชัน CalculatorFormula เมื่อมีการเปลี่ยนแปลงสูตร
- บันทึกไฟล์ที่อัปเดตเป็น XLSX
ในขั้นตอนข้างต้น เราสังเกตว่ามีการโหลดไฟล์ Excel และเข้าถึงแผ่นงานแรก คุณสามารถอ้างถึงชีตใดๆ ก็ตามที่จะอัปเดตข้อมูลโดยใช้ชื่อชีตหรือดัชนีที่เป็นศูนย์ ใช้การอ้างอิงแผ่นงาน เข้าถึงคอลเลกชันเซลล์ในแผ่นงาน และเข้าถึงเซลล์ใดๆ และอัปเดตค่าหรือสูตรลงในเซลล์นั้น สุดท้ายเรียกฟังก์ชันที่เกี่ยวข้องซึ่งจำเป็นตามการเปลี่ยนแปลงในไฟล์ ในบทช่วยสอนนี้เราจะเรียกใช้ฟังก์ชันการคำนวณสูตรเมื่อมีการอัปเดตสูตร ในที่สุดเราก็บันทึกสมุดงานลงในแผ่นดิสก์ นี่คือโค้ดตัวอย่างที่อัปเดตไฟล์ Excel ที่มีอยู่ใน Java
รหัสสำหรับเขียนข้อมูลไปยัง Excel ใน Java
import com.aspose.cells.License; | |
import com.aspose.cells.Cell; | |
import com.aspose.cells.Workbook; | |
public class UpdateExcelFileInJava { | |
public static void main(String[] args) throws Exception { //main() Function for UpdateExcelFileInJava | |
// Declare and initialize license for Aspose.Cells | |
License license = new License(); | |
license.setLicense("Aspose.Cells.lic"); | |
// Load the workbook that is to be updated | |
Workbook workbookWithDataAndFormula = new Workbook("WorkbookWithDataAndFormula.xlsx"); | |
// Get reference to first cell "A1" whose value is to be updated | |
Cell cellWithData = workbookWithDataAndFormula.getWorksheets().get(0).getCells().get("A1"); | |
// Update value in the first cell | |
cellWithData.setValue(100); | |
// Access another cell from the second sheet | |
Cell cellWithFormula = workbookWithDataAndFormula.getWorksheets().get(1).getCells().get("C1"); | |
// Modify the formula in the target cell | |
cellWithFormula.setFormula("=Sum(A1,A20)"); | |
// Call calculateFormula function as formula is changed in a sheet | |
workbookWithDataAndFormula.calculateFormula(); | |
// Save the workbook with updated value and formula | |
workbookWithDataAndFormula.save("WorkbookWithoutFormulas.xlsx"); | |
} | |
} |
ในโค้ดตัวอย่างนี้ เราได้ตรวจสอบโค้ด Java เพื่อเขียนข้อมูลในแผ่นงาน Excel หากคุณต้องการเขียนข้อมูลลงในไฟล์ Excel โดยใช้ภาษาอื่น เช่น C# โปรดดูบทความ วิธีแก้ไขไฟล์ Excel ใน C#
เราไม่จำเป็นต้องติดตั้งเครื่องมือของบุคคลที่สามเช่น MS Excel หรือไม่จำเป็นต้องใช้การทำงานร่วมกันสำหรับกระบวนการนี้