// Makes an array, but automatically resizes the result public static object dnaMakeArrayAndResize(int rows, int columns, string unused, string unusedtoo) { object[,] result = dnaMakeArray(rows, columns); return(ArrayResizer.dnaResize(result)); // Can also call Resize via Excel - so if the Resize add-in is not part of this code, it should still work // (though calling direct is better for large arrays - it prevents extra marshaling). // return XlCall.Excel(XlCall.xlUDF, "Resize", result); }
public static object dnaMakeMixedArrayAndResize(int rows, int columns) { object[,] result = new object[rows, columns]; for (int j = 0; j < columns; j++) { result[0, j] = "Col " + j; } for (int i = 1; i < rows; i++) { for (int j = 0; j < columns; j++) { result[i, j] = i + (j * 0.1); } } return(ArrayResizer.dnaResize(result)); }
public static object rxCreateArrays() { ExcelReference caller = Excel(xlfCaller) as ExcelReference; object result = RxExcel.Observe("rxCreateArrays", null, () => Observable.Generate( new List <object> { 1, 2, 3 }, lst => true, lst => { lst.Add((int)lst[lst.Count - 1] + 1); return(lst); }, lst => Transpose(lst.ToArray()), lst => TimeSpan.FromSeconds(1))); if (result.Equals(ExcelError.ExcelErrorNA)) { result = new object[, ] { { result } }; } return(ArrayResizer.Resize((object[, ])result, caller)); }
public static double[,] dnaMakeArrayAndResizeDoubles(int rows, int columns) { double[,] result = dnaMakeArrayDoubles(rows, columns); return(ArrayResizer.dnaResizeDoubles(result)); }