Reputation: 1794
I'm trying to set excel's cell name to some custom name and to later access that cell by its name. Is there some out of the box API call to do this, or how should I do this if I have information of worksheet and cell name in case of accessing cell and worksheet and cell address (i.e. C2) in case of naming the cell.
Also to ask, is there a way to acquire formatting information that is bound to that specific cell? (i.e. When I'm accessing cell by name I want to return cell value and some formatting properties of this cell, if cell is number or text, is it highlighted, etc...)
regards,
Vladimir Vajda
Upvotes: 4
Views: 8005
Reputation: 15378
As the accepted answer looks a bit outdated (there is no get_Range
on the Worksheet
object available), here how it works now:
using Excel = Microsoft.Office.Interop.Excel;
// ...
// Excel.Worksheet workSheet = ...
Excel.Range cell = workSheet.Range["P3"];
// or
Excel.Range cell = workSheet.Cells[3, "P"];
cell.Name = "lorem";
// access via name
Excel.Range loremCell = workSheet.Range["lorem"];
Upvotes: 1
Reputation: 43046
I think you may be looking for Range("C2")
.
As to formatting information, this is available through various properties of the Excel object model. See http://msdn.microsoft.com/en-us/library/ff197454.aspx for more information.
The Range
type (as opposed to the Range
indexed property referenced above) also exposes a Name
property, which you can set in code:
worksheet.get_Range("C2").Name = "fdafdfs"
worksheet.get_Range("fdafdfs").Select();
Upvotes: 7