2014-07-03 16 views
12

Tài liệu Không/Tối thiểu về Apache POI cho các bảng Pivot trong trang Apache đã yêu cầu tôi viết điều này.Làm mới bảng Pivot bằng cách sử dụng Apache POI

Tôi muốn làm mới bảng tổng hợp trong Sách công việc bằng cách sử dụng Apache POI.

Vui lòng cho tôi biết nơi tôi có thể nhận tài liệu thích hợp và các ví dụ liên quan đến điều này.

+1

Bạn có thể tham khảo câu trả lời cho câu hỏi sau tương tự - http: // stackoverflow.com/questions/1010673/refresh-pivot-table-với-apache-poi – codeMan

+3

Câu hỏi trên có các câu trả lời không liên quan đến Apache poi. – pavi

+0

Apache POI sẽ không thể thực hiện được nhiều việc ở đây. Câu chuyện dài và cách giải quyết tại http://www.joelonsoftware.com/items/2008/02/19.html. – Jayan

Trả lời

1

Mã liên kếtMan đề cập đến có một số lời khuyên có vẻ khá cụ thể đối với Apache POI & Excel. Bạn sẽ thấy rằng không có tài liệu tuyệt vời cho một lý do ở đây (nó không được hỗ trợ): http://poi.apache.org/spreadsheet/limitations.html

Để báo Solitudes câu trả lời trong codeMans liên kết đúng nguyên văn:

Có thể. Trong PivotCacheDefinition, có một thuộc tính refreshOnLoad có thể được đặt thành true. Bộ nhớ cache sau đó được làm mới khi sổ làm việc được mở. Thêm thông tin ở đây.

> Trong POI này có thể được thực hiện bằng cách gọi setRefreshOnLoad phương pháp (boolean bool), mà phải mất một boolean như tham số, trên một CTPivotCacheDefinition

Nếu bạn cần phải làm mới bảng pivot trước tập tin được mở, (ví dụ sau đó sử dụng dữ liệu được tính toán pivottable trong tính toán tiếp theo và có POI viết này) sau đó tôi không chắc chắn rằng điều này sẽ có thể ở tất cả với POI, và có khả năng hooking lên đến excel bằng cách sử dụng một giải pháp COM có thể là con đường để đi.

1

Vui lòng thực hiện theo các bước mà tôi đã làm.

  1. Điền dữ liệu thô cho bảng tổng hợp trong tệp MyFileName.xlsx của bạn.
  2. Tạo Công thức phạm vi động thông qua OFFSET() hoặc Named Table dưới dạng Dữ liệu nguồn cho bảng Pivot và vẽ bảng tổng hợp.
  3. Đơn giản chỉ cần Nhấp chuột phải pivot table của bạn và chọn

    pivotTable Options->Data-> Check Refresh Data when opening File

  4. Mở một tập tin MyFileName.xlsx và điền thông tin vào dữ liệu.

Đó là tất cả ... bất cứ khi nào bạn mở bảng tính nó sẽ được làm mới để dữ liệu hiện tại. :-)

Lưu ý: Điều này sẽ không hoạt động khi bạn tạo bảng Pivot thông qua POI.

Các vấn đề liên quan