humanemulator.net — справка.
Продукт, демо и покупка — на
хуманэмулятор.рф
|
Демо
|
Купить
|
API
|
Changelog
set_sheet
set_sheet($path,$sheet,$sheet_array,$timeout=3000,$row=1,$col="A",$set_all_cell_values_as_string=false); - Задать содержимое листа Excel файла данными из двумерного массиваФункция на вход принимает параметры:
После выполнения функции возвращаемое значение будет равно одному из двух :
Пример использования
<?php // Scenario: Set sheet values in Excel file $xhe_host = getenv("RPABOT_HOST_URL"); // Connect functional objects if not already connected if (!isset($path)){ // Path to the init.php file for connecting to the XHE API $path = "../../../Templates/init.php"; // Including init.php grants access to all classes and functionality for working with the XHE API require($path); } echo "\n<span >excelfile->" . basename(__FILE__) . "</span>\n"; // Initialize Excel SYSTEM::$excel->kill(); // Example 0: Remove column types dictionary for sheet $sheetNumber : "; // Extract method arguments into variables $excelFilePath = "test/test.xlsx"; $sheetNumber = 1; $result = SYSTEM::$excelfile->remove_column_types_dict($excelFilePath, $sheetNumber); if ($result === true) echo("true\n"); else echo("false\n"); // Example 1: Set sheet content from array with type support JSON echo("\nExample 1: Set sheet content from array start cell 5:10 with type support in sheet $sheetNumber : "); // Extract method arguments into variables $sheetArray = array( array(1, 2, '14.08.2025', '001', true, true), array(2, 2, '15.09.2025', '001', true, true), array(3, 2, '14.08.2026', '001', true, true), array(4, 2, '14.08.2025', '001', true, true) ); $startRow = 5; $startCol = 10; $timeout = 3000; $asText = false; $result = SYSTEM::$excelfile->set_sheet($excelFilePath, $sheetNumber, $sheetArray, $timeout, $startRow, $startCol, $asText); if ($result === true) echo("true\n"); else echo("false\n"); // Example 2: Add column types dictionary echo("\nExample 2: Add column types dictionary for sheet $sheetNumber : "); // Extract method arguments into variables // Valid column types: Text, Number, TimeSpan, DateTime, Boolean, Formula $columnsTypesArray = array(); $columnsTypesArray[0] = "Text"; // placeholder, this column does not exist $columnsTypesArray[1] = "Text"; $columnsTypesArray[2] = "Text"; $columnsTypesArray[3] = "Text"; $columnsTypesArray[4] = "Text"; $columnsTypesArray[5] = "Text"; $columnsTypesArray[6] = "Text"; $columnsTypesArray[7] = "Text"; $columnsTypesArray[8] = "Text"; $columnsTypesArray[9] = "Text"; $columnsTypesArray[10] = "Text"; $columnsTypesArray[11] = "Text"; $columnsTypesArray[12] = "Text"; $columnsTypesArray[13] = "Text"; $columnsTypesArray[14] = "Text"; $columnsTypesArray[15] = "Boolean"; echo("\nColumn types array for sheet $sheetNumber: "); var_export($columnsTypesArray); $result = SYSTEM::$excelfile->set_column_types_dict($excelFilePath, $sheetNumber, $columnsTypesArray); if ($result === true) echo("true\n"); else echo("false\n"); // Example 3: Set sheet content from array with type support by dictionary echo("\nExample 3: Set sheet content from array start cell 5:10 with type support by dictionary in sheet $sheetNumber : "); // Extract method arguments into variables $asText2 = false; $result = SYSTEM::$excelfile->set_sheet($excelFilePath, $sheetNumber, $sheetArray, $timeout, $startRow, $startCol, $asText2); if ($result === true) echo("true\n"); else echo("false\n"); // Example 4: Remove column types dictionary echo("\nExample 4: Remove column types dictionary for sheet $sheetNumber : "); // Extract method arguments into variables $result = SYSTEM::$excelfile->remove_column_types_dict($excelFilePath, $sheetNumber); if ($result === true) echo("true\n"); else echo("false\n"); // Example 5: Set sheet content from array, all cells as text, in sheet $sheetNumber echo("\nExample 5: Set sheet content from array, all cells as text, in sheet $sheetNumber : "); // Extract method arguments into variables $asText3 = true; $result = SYSTEM::$excelfile->set_sheet($excelFilePath, $sheetNumber, $sheetArray, $timeout, $startRow, $startCol, $asText3); if ($result === true) echo("true\n"); else echo("false\n"); // View the result WINDOW::$app->shell_execute("open", $excelFilePath); // End of script echo "\n"; // Quit the application WINDOW::$app->quit(); ?>
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7013" from xweb_human_emulator import * # начало echo("<hr><font color=blue>excelfile.set_sheet</font><hr>") excel.kill() # Путь к файлу Excel excelFilePath = "test/test.xlsx" # Номер Листа sheetNumber = 1 # Массив данных для вставки в Лист sheet_array = [ [1, 2, '14.08.2025', '001', true, true], [2, 2, '15.09.2025', '001', true, true], [3, 2, '14.08.2026', '001', false, false], [4, 2, '14.08.2026', '001', false, false] ] # 0. Удалить типы колонок из словаря для этого файла и Листа echo("\n0. Удалить типы колонок из словаря для Листа sheetNumber") echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber)) # 1. Задать содержимое Листа из массива с типизацией JSON # Для JSON ячейка даты получит значение даты как даты, если строка дата по ISO 8601. Пример: '2012-04-21T18:25:43-03:00' echo("\n1. Задать содержимое 1 Листа из массива стартовая ячейка 5:10 с типизацией в Лист sheetNumber: ") echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 5, 10, false)) # 2. Добавить типы колонок в словарь для этого файла и Листа echo("\n2. Добавить типы колонок в словарь для Листа sheetNumber: ") # Допустимые типы колонок: Text, Number, TimeSpan, DateTime, Boolean, Formula columns_types_array = [ "Text", # это заглушка такого столбца не существует "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Number", "Number", "DateTime", "Text", "Boolean"] echo ("\nМассив типов колонок для Листа sheetNumber: ") echo(columns_types_array) echo(excelfile.set_column_types_dict(excelFilePath, sheetNumber, columns_types_array)) # 3. Задать содержимое Листа из массива с типизацией по словарю echo("\n3. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 с типизацией по словарю в Лист sheetNumber: ") echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 10, 10, false)) # 4. Удалить типы колонок из словаря для этого файла и Листа echo("\n4. Удалить типы колонок из словаря для Листа sheetNumber: ") echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber)) # 5. Добавим новую строку все ячейки это строки echo("\n5. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 все ячейки это строки по словарю в Лист sheetNumber: ") echo(excelfile.set_sheet(excelFilePath, sheetNumber, sheet_array, 3000, 15, 10, true)) # посмотрим app.shell_execute("open", excelFilePath) # Quit app.quit()
#region using using System; using System.Diagnostics; using System.Collections.Generic; using System.Linq; using System.IO; using System.Text; using System.Threading; using XHE; using XHE.XHE_DOM; using XHE.XHE_System; using XHE.XHE_Window; using XHE.XHE_Web; #endregion class Program:XHEScript { static void Main(string[] args) { // init XHE server = Environment.GetEnvironmentVariable("RPABOT_HOST_URL"); InitXHE(); // начало echo("<hr><font color=blue>excelfile.set_sheet</font><hr>"); excel.kill(); // Путь к файлу Excel var excelFilePath = "test/test.xlsx"; // Номер Листа var sheetNumber = 1; // Массив данных для вставки в Лист var sheet_array = string[,]{ { 1, 2, '14.08.2025', '001', true, true }, { 2, 2, '15.09.2025', '001', true, true }, { 3, 2, '14.08.2026', '001', false, false }, { 4, 2, '14.08.2026', '001', false, false } }; // 0. Удалить типы колонок из словаря для этого файла и Листа echo("\n0. Удалить типы колонок из словаря для Листа sheetNumber"); echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber)); // 1. Задать содержимое Листа из массива с типизацией JSON // Для JSON ячейка даты получит значение даты как даты, если строка дата по ISO 8601. Пример: '2012-04-21T18:25:43-03:00' echo("\n1. Задать содержимое 1 Листа из массива стартовая ячейка 5:10 с типизацией в Лист sheetNumber: "); echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 5, 10, false)); // 2. Добавить типы колонок в словарь для этого файла и Листа echo("\n2. Добавить типы колонок в словарь для Листа sheetNumber: "); // Допустимые типы колонок: Text, Number, TimeSpan, DateTime, Boolean, Formula var columns_types_array = string[,]{ "Text", // это заглушка такого столбца не существует "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Text", "Number", "Number", "DateTime", "Text", "Boolean" }; echo("\nМассив типов колонок для Листа sheetNumber: "); echo(columns_types_array); echo(excelfile.set_column_types_dict(excelFilePath, sheetNumber, columns_types_array)); // 3. Задать содержимое Листа из массива с типизацией по словарю echo("\n3. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 с типизацией по словарю в Лист sheetNumber: "); echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 10, 10, false)); // 4. Удалить типы колонок из словаря для этого файла и Листа echo("\n4. Удалить типы колонок из словаря для Листа sheetNumber: "); echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber)); // 5. Добавим новую строку все ячейки это строки echo("\n5. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 все ячейки это строки по словарю в Лист sheetNumber: "); echo(excelfile.set_sheet(excelFilePath, sheetNumber, sheet_array, 3000, 15, 10, true)); // посмотрим app.shell_execute("open", excelFilePath); // Quit app.quit(); } }
xhe_host="127.0.0.1:7013";
echo=require("../../../Templates JS/init.js");
// начало
echo("<hr><font color=blue>excelfile.set_sheet</font><hr>");
excel.kill();
// Путь к файлу Excel
const excelFilePath = "test/test.xlsx";
// Номер Листа
const sheetNumber = 1;
// Массив данных для вставки в Лист
const sheet_array = [
[1, 2, '14.08.2025', '001', true, true],
[2, 2, '15.09.2025', '001', true, true],
[3, 2, '14.08.2026', '001', false, false],
[4, 2, '14.08.2026', '001', false, false]
];
// 0. Удалить типы колонок из словаря для этого файла и Листа
echo("\n0. Удалить типы колонок из словаря для Листа sheetNumber");
echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber));
// 1. Задать содержимое Листа из массива с типизацией JSON
// Для JSON ячейка даты получит значение даты как даты, если строка дата по ISO 8601. Пример: '2012-04-21T18:25:43-03:00'
echo("\n1. Задать содержимое 1 Листа из массива стартовая ячейка 5:10 с типизацией в Лист sheetNumber: ");
echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 5, 10, false));
// 2. Добавить типы колонок в словарь для этого файла и Листа
echo("\n2. Добавить типы колонок в словарь для Листа sheetNumber: ");
// Допустимые типы колонок: Text, Number, TimeSpan, DateTime, Boolean, Formula
columns_types_array = [
"Text", // это заглушка такого столбца не существует
"Text",
"Text",
"Text",
"Text",
"Text",
"Text",
"Text",
"Text",
"Text",
"Number",
"Number",
"DateTime",
"Text",
"Boolean"];
echo ("\nМассив типов колонок для Листа sheetNumber: ");
echo(columns_types_array);
echo(excelfile.set_column_types_dict(excelFilePath, sheetNumber, columns_types_array));
// 3. Задать содержимое Листа из массива с типизацией по словарю
echo("\n3. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 с типизацией по словарю в Лист sheetNumber: ");
echo(excelfile.set_sheet(excelFilePath, 1, sheet_array, 3000, 10, 10, false));
// 4. Удалить типы колонок из словаря для этого файла и Листа
echo("\n4. Удалить типы колонок из словаря для Листа sheetNumber: ");
echo(excelfile.remove_column_types_dict(excelFilePath, sheetNumber));
// 5. Добавим новую строку все ячейки это строки
echo("\n5. Задать содержимое 1 Листа из массива стартовая ячейка 10:10 все ячейки это строки по словарю в Лист sheetNumber: ");
echo(excelfile.set_sheet(excelFilePath, sheetNumber, sheet_array, 3000, 15, 10, true));
// посмотрим
app.shell_execute("open", excelFilePath);
// Quit
app.quit();=============================================
excelfile Объекты DOM System Vision Web Window
=============================================
если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
.