T
thomas.b.mann
I am moving data from an ADO.NET DataTable object in C# and
I am having performance issues.
QueryTables.Add, at least when called from C#,
seems to spin off its own thread. So I go doing
a bunch of other stuff to an invisible sheet AFTER
I want the data transfer to occur, however, even
after everything else completes (including showing
the file) it is still executing.
I can't use Range.CopyFromRecordset as that method
seems to interface with my .NET DataTable.
So I am essentially setting cell values like so:
for (int i=0; i< myDTable.Rows.Count; i++)
{
for (int j=0; j< myDTable.Columns.Count; j++)
{
myCell.Value = myDTable.Rows[j]; //this is pseudo
}
}
and this is horribly inefficient, even for modest
sized data sets.
Any way to dump this to the sheet faster.
I wouldn't mind a non-looping approach
to putting a DataRow object in some Range,
I just don't know how to do it.
Thanks.
thomas
I am having performance issues.
QueryTables.Add, at least when called from C#,
seems to spin off its own thread. So I go doing
a bunch of other stuff to an invisible sheet AFTER
I want the data transfer to occur, however, even
after everything else completes (including showing
the file) it is still executing.
I can't use Range.CopyFromRecordset as that method
seems to interface with my .NET DataTable.
So I am essentially setting cell values like so:
for (int i=0; i< myDTable.Rows.Count; i++)
{
for (int j=0; j< myDTable.Columns.Count; j++)
{
myCell.Value = myDTable.Rows[j]; //this is pseudo
}
}
and this is horribly inefficient, even for modest
sized data sets.
Any way to dump this to the sheet faster.
I wouldn't mind a non-looping approach
to putting a DataRow object in some Range,
I just don't know how to do it.
Thanks.
thomas