web-dev-qa-db-ja.com

Microsoft相互運用機能:Excelの列名

MicrosoftInteropを使用してデータを読み取っています。

Excelシートでは、列名はA、B、C、D、....、AA、AB、....などのようになります。この列名を読み取る方法はありますか?

他の情報が必要な場合はお知らせください。

よろしく、プリヤンク

9
Priyank Thakkar
     Excel.Application xlApp = new Excel.Application();
     Excel.Workbook xlWorkbook = xlApp.Workbooks.Open("workbookname");
     Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[1]; // assume it is the first sheet
     int columnCount = xlWorksheet.UsedRange.Columns.Count;
     List<string> columnNames = new List<string>();
     for (int c = 1; c < columnCount; c++)
     {
         if (xlWorksheet.Cells[1, c].Value2 != null)
         {
             string columnName = xlWorksheet.Columns[c].Address;
             Regex reg = new Regex(@"(\$)(\w*):");
             if (reg.IsMatch(columnName))
             {
                 Match match = reg.Match(columnName);             
                 columnNames.Add(match.Groups[2].Value);
             }                      
        }
     }

これにより、各列名がList<string>に配置され、ドロップダウンボックスにバインドできます。

13
Jetti