I’d say I know my way around the Excel object model pretty well, although, of course like everyone there are plenty of gaps.
The more I work with C# and its anal type pedantic-ness, the more of those gaps I start to see.
Someone emailed me ages ago to point out that the Excel state management module that is available here treats the calc mode as a long, and it could be/should of course be an xl.XlCalculation (!).
Here are some other nuggets from a recent project:
FormulaDestStart = (xl.Range)wsDest.Cells[((xl.Range)DestDataRange.Cells[1, 1]).Row, FormulaDestCol];
m_xlapp.CutCopyMode = (xl.XlCutCopyMode)0;
refersTo.get_Address(oo, oo, xl.XlReferenceStyle.xlA1, oo, oo));
((xl.Worksheet)m_DestWorkbook.Worksheets.get_Item(c_ControllerName)).get_Range("Acc...
m_DestWorkbook.SaveAs(fsn, xl.XlFileFormat.xlExcel12, oo, oo, true, oo,
xl.XlSaveAsAccessMode.xlNoChange
I know some of my gaps are based on my mainly trading off Excel 97 knowledge, typeness has tightened in each version. But some of these are just a bit on the excessive side for me.
I do in fact plan to fully refresh my library for Office 2010, not because it is a huge leap, but because I think its a good solid release and one I suspect corporates will consider moving to. Not sure yet if it is like 2002 (xp) or 2003 (classique). Of course 2003 is the main corporate staple at the moment. I think that will change in the next 18 months.
The get_address is a bit of the PITA for debugging I find, do you?
Have you come across any overly verbose/precise references like these? faves?
cheers
simon