Чтение и запись запросов таблицы рабочего листа

Чтение и запись запроса таблицы листа

Следующий образец кода считывает первую QueryTable первого рабочего листа и затем печатает оба свойства QueryTable. Затем устанавливает QueryTable.PreserveFormatting в true.

Следующий снимок экрана показывает исходный файл Excel, используемый в коде и его свойства, показывающие оба значения QueryTable.

todo:image_alt_text

Следующий снимок экрана показывает выходной файл Excel, сгенерированный кодом и его свойства, показывающие оба значения QueryTable. Как видите, флажок Сохранить форматирование теперь установлен.

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
String dataDir = Utils.getDataDir(ReadingAndWritingQueryTable.class);
// Create workbook from source excel file
Workbook workbook = new Workbook(dataDir + "Sample.xlsx");
// Access first worksheet
Worksheet worksheet = workbook.getWorksheets().get(0);
// Access first Query Table
QueryTable qt = worksheet.getQueryTables().get(0);
// Print Query Table Data
System.out.println("Adjust Column Width: " + qt.getAdjustColumnWidth());
System.out.println("Preserve Formatting: " + qt.getPreserveFormatting());
// Now set Preserve Formatting to true
qt.setPreserveFormatting(true);
// Save the workbook
workbook.save(dataDir + "Output.xlsx");

Вывод в консоль

Вот вывод консоли из приведенного выше примера кода

 Adjust Column Width: true

Preserve Formatting: false

Извлечение диапазона результата запроса таблицы

Aspose.Cells предоставляет возможность чтения адреса, то есть диапазона результатов ячеек для запроса таблицы. Следующий код демонстрирует эту функцию, читая адрес диапазона результатов для таблицы запросов. Пример файла можно загрузить здесь.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Create workbook from source excel file
Workbook wb = new Workbook("Query TXT.xlsx");
// Display the address(range) of result range of query table
System.out.println(wb.getWorksheets().get(0).getQueryTables().get(0).getResultRange().getAddress());