TableBinding.addRowsAsync method (JavaScript API for Office v1.1)

JavaScript API for Office v1.1

Adds rows and values to a table.

Last modified: July 21, 2014

Introduced in Office.js version


Updated in Office.js version


bindingObj.addRowsAsync(rows, [,options], callback);


Type: Array

An array of arrays that contains one or more rows of data to add to the table. Required.



Specifies the following optional parameters.


Type: array, Boolean, null, number, object, string, or undefined

A user-defined item of any type that is returned in the AsyncResult object without being altered. Optional.


Type: object

A function that is invoked when the callback returns, whose only parameter is of type AsyncResult. Optional.

When the function you passed to the callback parameter executes, it receives an AsyncResult object that you can access from the callback function's only parameter.

In the callback function passed to the addRowsAsync method, you can use the properties of the AsyncResult object to return the following information.


Use to...


Always returns undefined because there is no object or data to retrieve.


Determine the success or failure of the operation.


Access an Error object that provides error information if the operation failed.


Access your user-defined object or value, if you passed one as the asyncContext parameter.

The success or failure of an addRowsAsync operation is atomic. That is, the entire add rows operation must succeed, or it will be completely rolled back (and the AsyncResult.status property returned to the callback will report failure):

  • Each row in the array you pass as the data argument must have the same number of columns as the table being updated. If not, the entire operation will fail.

  • Each row and cell in the array must successfully add that row and cell to the table in the newly added row(s). If any row or cell fails to be set for any reason, the entire operation will fail.

Additional remarks for Excel Online

The total number of cells in the value passed to the rows parameter can't exceed 20,000 in a single call to this method.

function addRowsToTable() {
    Office.context.document.bindings.getByIdAsync("myBinding", function (asyncResult) {
        var binding = asyncResult.value;
        binding.addRowsAsync([["6", "k"], ["7", "j"]]);

App types

Content apps, Task pane apps

Supported clients

Access app for SharePoint, Excel 2013, Excel Online, Excel 2013 SP1, Excel 2013 RT, Word 2013, Word 2013 SP1, Word 2013 RT





© 2014 Microsoft