IMPRODUCT function
PRO
BASIC
The IMPRODUCT
function in Jspreadsheet Formulas Pro is a useful tool that calculates the multiplication result of complex numbers. Complex numbers consist of a real and an imaginary part. You simply input the complex numbers you want to multiply in the IMPRODUCT
function, and it will return the product. This is particularly handy for mathematical or engineering calculations involving complex numbers.
Documentation
Returns the product of complex numbers.
Category
Engineering
Syntax
IMPRODUCT(inumber1, [inumber2], ...)
Parameter | Description |
---|---|
inumber1 |
The first complex number in the product. |
inumberN |
Optional. Additional complex numbers you want to include in the product. |
Behavior
The IMPRODUCT
function multiplies one or more complex numbers, which can be provided as individual arguments, cell references, or ranges. A complex number is of the form x + yi
where x
is the real part and y
is the imaginary part. Here is how it handles various inputs:
- Empty cells:
IMPRODUCT
function ignores empty cells. - Text: If the text cannot be interpreted as a complex number,
IMPRODUCT
returns a#VALUE!
error. - Booleans: Boolean values are treated as numbers -
TRUE
is interpreted as 1 andFALSE
is interpreted as 0 by theIMPRODUCT
function. - Errors: If any cell in the range or array contains an error,
IMPRODUCT
returns that error. - "If no arguments are provided,
IMPRODUCT
returns a#N/A
error."
Common Errors
Error | Description |
---|---|
#VALUE! | This error is returned when one or more of the input values are not recognized as valid complex numbers. |
#NUM! | This error is returned when the function results in a number too large to be represented in the spreadsheet. |
#N/A | This error is returned when no arguments are provided to the function. |
Best practices
- Ensure that the values you are inputting are valid complex numbers. The function won't work with regular numeric values or other forms of text.
- Handle errors effectively by using error checking functions such as
IFERROR
orISERROR
withIMPRODUCT
.- Avoid including cells with error values in the range or array as it causes the function to return an error.
- Remember that empty cells are ignored by the
IMPRODUCT
function. If you need to include them in calculations, consider using a method to replace empty cells with a value.
Usage
A few examples using the IMPRODUCT function.
IMPRODUCT("1+i", "1-i") returns 2
IMPRODUCT("3", "4+2i") returns 12+6i
IMPRODUCT("0+5i", "0-5i") returns 25
Interactive Spreadsheet Demo
<html>
<script src="https://jspreadsheet.com/v11/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://jspreadsheet.com/v11/jspreadsheet.css" type="text/css" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons" />
<script src="https://cdn.jsdelivr.net/npm/@jspreadsheet/formula-pro/dist/index.min.js"></script>
<div id="spreadsheet"></div>
<script>
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('NWFhZjZiNWQwMmExODA2YWQwMTllNDYyMzkxNDRiYjdhZGYyN2ZiMGY3ZWVlYmVjNGZjODhhM2RkODFiOWUwMzMwNjkwN2IzYTJjNjZmZTFkMzQyNGExZjNhZTdjMWRhOGU2Y2I5YzYzMWRmMzA4ZTliMzU1NzZiY2EzNWM5MjAsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXhNVGN4TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
// Create a new spreadsheet
jspreadsheet(document.getElementById('spreadsheet'), {
worksheets: [{
data: [
[
"Complex Number 1",
"Complex Number 2",
"Product"
],
[
"3+4i",
"2-5i",
"=IMPRODUCT(A2,B2)"
],
[
"1+2i",
"3+i",
"=IMPRODUCT(A3,B3)"
],
[
"-2+3i",
"4+2i",
"=IMPRODUCT(A4,B4)"
]
]
}]
});
</script>
</html>
import React, { useRef } from "react";
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/react";
import formula from "@jspreadsheet/formula-pro";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
// Set license
jspreadsheet.setLicense('NWFhZjZiNWQwMmExODA2YWQwMTllNDYyMzkxNDRiYjdhZGYyN2ZiMGY3ZWVlYmVjNGZjODhhM2RkODFiOWUwMzMwNjkwN2IzYTJjNjZmZTFkMzQyNGExZjNhZTdjMWRhOGU2Y2I5YzYzMWRmMzA4ZTliMzU1NzZiY2EzNWM5MjAsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXhNVGN4TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default function App() {
// Spreadsheet array of worksheets
const spreadsheet = useRef();
// Worksheet data
const data = [
[
"Complex Number 1",
"Complex Number 2",
"Product"
],
[
"3+4i",
"2-5i",
"=IMPRODUCT(A2,B2)"
],
[
"1+2i",
"3+i",
"=IMPRODUCT(A3,B3)"
],
[
"-2+3i",
"4+2i",
"=IMPRODUCT(A4,B4)"
]
];
// Render component
return (
<Spreadsheet ref={spreadsheet}>
<Worksheet data={data} />
</Spreadsheet>
);
}
<template>
<Spreadsheet ref="spreadsheet">
<Worksheet :data="data" />
</Spreadsheet>
</template>
<script>
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/vue";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
import formula from "@jspreadsheet/formula-pro";
// Set license
jspreadsheet.setLicense('NWFhZjZiNWQwMmExODA2YWQwMTllNDYyMzkxNDRiYjdhZGYyN2ZiMGY3ZWVlYmVjNGZjODhhM2RkODFiOWUwMzMwNjkwN2IzYTJjNjZmZTFkMzQyNGExZjNhZTdjMWRhOGU2Y2I5YzYzMWRmMzA4ZTliMzU1NzZiY2EzNWM5MjAsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXhNVGN4TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default {
components: {
Spreadsheet,
Worksheet,
},
data() {
// Worksheet data
const data = [
[
"Complex Number 1",
"Complex Number 2",
"Product"
],
[
"3+4i",
"2-5i",
"=IMPRODUCT(A2,B2)"
],
[
"1+2i",
"3+i",
"=IMPRODUCT(A3,B3)"
],
[
"-2+3i",
"4+2i",
"=IMPRODUCT(A4,B4)"
]
]
return {
data
};
}
}
</script>
import { Component, ViewChild, ElementRef } from "@angular/core";
import jspreadsheet from "jspreadsheet";
import * as formula from "@jspreadsheet/formula-pro";
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('NWFhZjZiNWQwMmExODA2YWQwMTllNDYyMzkxNDRiYjdhZGYyN2ZiMGY3ZWVlYmVjNGZjODhhM2RkODFiOWUwMzMwNjkwN2IzYTJjNjZmZTFkMzQyNGExZjNhZTdjMWRhOGU2Y2I5YzYzMWRmMzA4ZTliMzU1NzZiY2EzNWM5MjAsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXhNVGN4TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
@Component({
standalone: true,
selector: "app-root",
template: `<div #spreadsheet></div>`
})
export class AppComponent {
@ViewChild("spreadsheet") spreadsheet: ElementRef;
// Worksheets
worksheets: jspreadsheet.worksheetInstance[];
// Create a new data grid
ngAfterViewInit() {
// Create spreadsheet
this.worksheets = jspreadsheet(this.spreadsheet.nativeElement, {
worksheets: [{
data: [
[
"Complex Number 1",
"Complex Number 2",
"Product"
],
[
"3+4i",
"2-5i",
"=IMPRODUCT(A2,B2)"
],
[
"1+2i",
"3+i",
"=IMPRODUCT(A3,B3)"
],
[
"-2+3i",
"4+2i",
"=IMPRODUCT(A4,B4)"
]
]
}]
});
}
}