質問編集履歴
2
ソースコード修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -23,7 +23,7 @@
|
|
23
23
|
|
24
24
|
// セル値の取得
|
25
25
|
rangeSpec = excelSheetSpec.get_Range("A1");
|
26
|
-
string value =
|
26
|
+
string value = rangeSpec.Value2 == null ? "" : rangeSpec.Value2.ToString();
|
27
27
|
|
28
28
|
// Excel関係オブジェクトの解放。
|
29
29
|
// アプリケーションの終了前に破棄可能なオブジェクトを破棄します。
|
1
ソースコード記載
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,8 +5,45 @@
|
|
5
5
|
新たに指定sheetに含まれるOption Buttonのチェック状態を取得する必要がでてきました。C#でのこの実現方法を知りたいです。
|
6
6
|
|
7
7
|
### 試したこと
|
8
|
-
|
8
|
+
セル値のReadは下記のコードで行っています。
|
9
9
|
|
10
|
-
#
|
10
|
+
```C#
|
11
|
+
Excel.Application excelApp = null;
|
12
|
+
Excel.Workbook excelWorkbookSpec = null;
|
13
|
+
Excel.Worksheet excelSheetSpec = null;
|
14
|
+
Excel.Range rangeSpec = null;
|
15
|
+
|
16
|
+
// Excel起動。
|
17
|
+
excelApp = new Excel.Application();
|
18
|
+
|
19
|
+
// ファイルのOpen
|
20
|
+
string filepath = @"C:\home\test.xlsx";
|
21
|
+
excelWorkbookSpec = (Excel.Workbook)(excelApp.Workbooks.Open(filepath, Type.Missing, false, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing));
|
22
|
+
excelSheetSpec = (Excel.Worksheet)excelWorkbookSpec.Sheets[1];
|
23
|
+
|
24
|
+
// セル値の取得
|
25
|
+
rangeSpec = excelSheetSpec.get_Range("A1");
|
26
|
+
string value = ToString(rangeSpec.Value2);
|
27
|
+
|
28
|
+
// Excel関係オブジェクトの解放。
|
29
|
+
// アプリケーションの終了前に破棄可能なオブジェクトを破棄します。
|
30
|
+
Marshal.ReleaseComObject(rangeSpec);
|
31
|
+
rangeSpec = null;
|
32
|
+
|
33
|
+
Marshal.ReleaseComObject(excelSheetSpec);
|
34
|
+
excelSheetSpec = null;
|
35
|
+
|
36
|
+
Marshal.ReleaseComObject(excelWorkbookSpec);
|
37
|
+
excelWorkbookSpec = null;
|
38
|
+
|
39
|
+
// アプリケーションを終了します。
|
40
|
+
excelApp.Quit();
|
41
|
+
|
42
|
+
// Application オブジェクトを破棄します。
|
43
|
+
Marshal.ReleaseComObject(excelApp);
|
44
|
+
excelApp = null;
|
45
|
+
|
46
|
+
```
|
47
|
+
## 補足情報(FW/ツールのバージョンなど)
|
11
48
|
VisualStudio2010
|
12
49
|
Excel2007
|