PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.7.5
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.7.5
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 3.10.4 All 148 releases
visualizer / vendor / phpoffice / phpspreadsheet / samples / Basic / 03_Formulas.php

03_Formulas.php in Visualizer – Tables & Charts Manager with Built-in AI Generator 3.7.5, at vendor/phpoffice/phpspreadsheet/samples/Basic/03_Formulas.php

82 lines 3.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 use PhpOffice\PhpSpreadsheet\Spreadsheet;
4
5 require __DIR__ . '/../Header.php';
6
7 // Create new Spreadsheet object
8 $helper->log('Create new Spreadsheet object');
9 $spreadsheet = new Spreadsheet();
10
11 // Set document properties
12 $helper->log('Set document properties');
13 $spreadsheet->getProperties()->setCreator('Maarten Balliauw')
14 ->setLastModifiedBy('Maarten Balliauw')
15 ->setTitle('Office 2007 XLSX Test Document')
16 ->setSubject('Office 2007 XLSX Test Document')
17 ->setDescription('Test document for Office 2007 XLSX, generated using PHP classes.')
18 ->setKeywords('office 2007 openxml php')
19 ->setCategory('Test result file');
20
21 // Add some data, we will use some formulas here
22 $helper->log('Add some data');
23 $spreadsheet->getActiveSheet()
24 ->setCellValue('A5', 'Sum:');
25
26 $spreadsheet->getActiveSheet()->setCellValue('B1', 'Range #1')
27 ->setCellValue('B2', 3)
28 ->setCellValue('B3', 7)
29 ->setCellValue('B4', 13)
30 ->setCellValue('B5', '=SUM(B2:B4)');
31 $helper->log('Sum of Range #1 is ' . $spreadsheet->getActiveSheet()->getCell('B5')->getCalculatedValue());
32
33 $spreadsheet->getActiveSheet()->setCellValue('C1', 'Range #2')
34 ->setCellValue('C2', 5)
35 ->setCellValue('C3', 11)
36 ->setCellValue('C4', 17)
37 ->setCellValue('C5', '=SUM(C2:C4)');
38 $helper->log('Sum of Range #2 is ' . $spreadsheet->getActiveSheet()->getCell('C5')->getCalculatedValue());
39
40 $spreadsheet->getActiveSheet()
41 ->setCellValue('A7', 'Total of both ranges:');
42 $spreadsheet->getActiveSheet()
43 ->setCellValue('B7', '=SUM(B5:C5)');
44 $helper->log('Sum of both Ranges is ' . $spreadsheet->getActiveSheet()->getCell('B7')->getCalculatedValue());
45
46 $spreadsheet->getActiveSheet()
47 ->setCellValue('A8', 'Minimum of both ranges:');
48 $spreadsheet->getActiveSheet()
49 ->setCellValue('B8', '=MIN(B2:C4)');
50 $helper->log('Minimum value in either Range is ' . $spreadsheet->getActiveSheet()->getCell('B8')->getCalculatedValue());
51
52 $spreadsheet->getActiveSheet()
53 ->setCellValue('A9', 'Maximum of both ranges:');
54 $spreadsheet->getActiveSheet()
55 ->setCellValue('B9', '=MAX(B2:C4)');
56 $helper->log('Maximum value in either Range is ' . $spreadsheet->getActiveSheet()->getCell('B9')->getCalculatedValue());
57
58 $spreadsheet->getActiveSheet()
59 ->setCellValue('A10', 'Average of both ranges:');
60 $spreadsheet->getActiveSheet()
61 ->setCellValue('B10', '=AVERAGE(B2:C4)');
62 $helper->log('Average value of both Ranges is ' . $spreadsheet->getActiveSheet()->getCell('B10')->getCalculatedValue());
63 $spreadsheet->getActiveSheet()
64 ->getColumnDimension('A')
65 ->setAutoSize(true);
66
67 // Rename worksheet
68 $helper->log('Rename worksheet');
69 $spreadsheet->getActiveSheet()
70 ->setTitle('Formulas');
71
72 //
73 // If we set Pre Calculated Formulas to true then PhpSpreadsheet will calculate all formulae in the
74 // workbook before saving. This adds time and memory overhead, and can cause some problems with formulae
75 // using functions or features (such as array formulae) that aren't yet supported by the calculation engine
76 // If the value is false (the default) for the Xlsx Writer, then MS Excel (or the application used to
77 // open the file) will need to recalculate values itself to guarantee that the correct results are available.
78 //
79 //$writer->setPreCalculateFormulas(true);
80 // Save
81 $helper->write($spreadsheet, __FILE__);
82