Điều tôi có là trang tính có dữ liệu và tôi muốn xác định phạm vi không tiếp giáp có thể được sử dụng để làm ví dụ, tạo biểu đồ.Delphi - Excel: Xác định phạm vi không tiếp giáp
Miễn là phạm vi hình chữ nhật, nó khá dễ dàng xác định phạm vi.
range := ASheet.Range['A1', 'B10'];
Điều này tạo ra một loạt hình chữ nhật với góc phía trên bên trái tại A1
và góc dưới bên phải trong B10
. Vấn đề là khi dữ liệu không được xác định để nó có thể được chọn với một hình chữ nhật duy nhất.
Ví dụ chúng ta có dữ liệu này:
+-------+------+------+------+------+
| Time | Col1 | Col2 | Col3 | Col4 |
+-------+------+------+------+------+
| 01:20 | 5 | 1 | 101 | 51 |
| 01:21 | 6 | 1 | 101 | 51 |
| 01:22 | 5 | 0 | 101 | 51 |
| 01:23 | 5 | 0 | 101 | 51 |
| 01:24 | 5 | 0 | 101 | 55 |
| 01:25 | 5 | 1 | 101 | 55 |
| 01:26 | 6 | 1 | 101 | 15 |
| 01:27 | 7 | 2 | 101 | 15 |
| 01:28 | 7 | 2 | 101 | 15 |
+-------+------+------+------+------+
Nếu tôi ví dụ muốn tạo ra một biểu đồ cho Time, col1 và col2 sau đó phạm vi chỉ đơn giản là ASheet.Range['A1', 'C10']
. Nếu tôi muốn tạo biểu đồ cho Thời gian, Col1, Col3 và Col4 thì không thể tạo phạm vi theo cách này (vì không nên bao gồm Col2).
Trong VBA, bạn có thể tạo phạm vi mong muốn chỉ bằng .Range("A1:B10,D1:E10")
. Thật không may có vẻ không phải là một cách tương đương để xác định một phạm vi trong Delphi (Excel2010), trên thực tế nó dường như chỉ hỗ trợ phạm vi với định dạng .Range[topLeft, bottomRight]
.
Câu hỏi của tôi là: Làm cách nào để xác định phạm vi không tiếp giáp trong Delphi?
+1; giải pháp tốt. Tôi có thể liên quan đến sự thất vọng tìm kiếm (: –
Liên kết đến các phiên bản Excel khác của cùng một chức năng: [Excel 2013 Application.Union] (http://msdn.microsoft.com/en-us/library/office/ff834621 (v = office.15) .aspx); [Excel 2010 Application.Union] (http://msdn.microsoft.com/en-us/library/office/ff834621 (v = office.14) .aspx); [Ứng dụng Excel 2007 .Union] (http://msdn.microsoft.com/en-us/library/office/bb178176 (v = office.12) .aspx); [Excel 2003 Application.Union] (http://msdn.microsoft. com/vi-us/thư viện/văn phòng/aa213609 (v = office.11) .aspx); –