MLAppendMatrix - Create or append MATLAB® matrix with data from Microsoft® Excel® worksheet

Syntax

Worksheet:

MLAppendMatrix(var_name, mdat)

Macro:

MLAppendMatrix var_name, mdat

var_name

Name of MATLAB matrix to which to append data. "var_name" (in quotation marks) directly specifies the matrix name. var_name (without quotation marks) is an indirect reference: the function evaluates the contents of var_name to get the matrix name, and var_name must be a worksheet cell address or range name

mdat

Location of data to append to var_name. mdat (no quotation marks). Must be a worksheet cell address or range name.

If this argument is not initially an Excel® Range data type and you call the function from a worksheet, MLAppendMatrix performs the necessary type coercion.

If this argument is not an Excel Range data type and you call the function from within a Microsoft® Visual Basic® macro, the call fails. The error message ByRef Argument Type Mismatch appears.

Description

Appends data in mdat to MATLAB matrix var_name. Creates var_name if it does not exist. The function checks the dimensions of var_name and mdat to determine how to append mdat to var_name. If the dimensions allow appending mdat as either new rows or new columns, it appends mdat to var_name as new rows. If the dimensions do not match, the function returns an error. mdat must contain either numeric data or string data. Data types cannot be combined within the range specified in mdat. Empty mdat cells become MATLAB matrix elements containing zero if the data is numeric, and empty strings if the data is a string.

Examples

Example 1: Append data from a worksheet cell range to a MATLAB® matrix

In this example, B is a 2-by-2 MATLAB matrix. Append the data in worksheet cell range A1:A2 to B:

MLAppendMatrix("B", A1:A2)
  

A1

  

A2

B is now a 2-by-3 matrix with the data from A1:A2 in the third column.

Example 2: Append data from a named worksheet cell range to a MATLAB® matrix

B is a 2-by-2 MATLAB matrix. Cell C1 contains the label (string) B, and new_data is the name of the cell range A1:B2. Append the data in cell range A1:B2 to B:

MLAppendMatrix(C1, new_data)

B is now a 4-by-2 matrix with the data from A1:B2 in the last two rows.

  
  

A1

B1

A2

B2

See Also

MLPutMatrix

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS