我喜欢这样:
if (Excel._Application.ActiveWorkbook != null)
{
List<WorksheetKeyValue> sheets = new List<WorksheetKeyValue>();
foreach (object ws in ExcelApp.ActiveWorkbook.Worksheets)
{
string strCodeName = ws.CodeName
}
}
Run Code Online (Sandbox Code Playgroud)
但它strCodeName是一个空字符串,它应该是在VBA中的Sheet1,Sheet2,...,SheetN.
谢谢
在您的情况下,您可以使用Worksheet.CustomProperties作为替代来保存工作表的唯一属性.
Worksheet ws = **current_sheet** as Worksheet;
ws.CustomProperties.Add("SheetID", **some_value**);
Run Code Online (Sandbox Code Playgroud)
所以,稍后您可以访问它们
foreach (Excel.CustomProperty prop in ws.CustomProperties)
{
if (prop.Name == "SheetID")
{
// access as prop.Value and prop.Name
}
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
2556 次 |
| 最近记录: |