C#で記述されたExcel用のVSTOプロジェクトでは、セルの文字列リストからRangeオブジェクトを取得する必要があります。
問題の簡略化されたバージョンは次のとおりです。
string strRange = "A1:A2,A5";
Excel.Range r = sheet.get_Range(strRange);
ただし、リストの区切り文字は、カルチャ設定が異なればコンマとは異なる可能性があるため、実際に使用しているのは次のとおりです。
listSep = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ListSeparator;
string strRange = "A1:A2" + listSep + "A5";
Excel.Range r = sheet.get_Range(strRange);
私の問題は、ユーザーがExcelの[オプション]> [詳細設定](Application.DecimalSeparator)の[小数点記号]をListSeparatorと一致するように変更した場合、これが機能しないことです。
範囲を指定する文字列を使用してget_Rangeを呼び出す正しい方法は何ですか?
編集:以下の私のコメントの情報を追加するためのわずかな変更。