teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

未解決

2016/04/26 06:52

投稿

srn_103
srn_103

スコア12

title CHANGED
@@ -1,1 +1,1 @@
1
- java でExcelファイルの値を読み込み、別ファイルに書き込んで保存する
1
+ java でExcelファイルの値を読み込み、別ファイルに書き込んで保存する(2016.04.26更新)
body CHANGED
@@ -1,7 +1,11 @@
1
+ (2016.04.26 更新)
1
2
  こんにちは。
2
- javaでExcelファイルの
3
3
 
4
+ 回答をいただきましたが、別のエラーメッセージが表示されました。
5
+ 発生した事象に変化はありません。
4
6
 
7
+ 再度よろしくお願いいたします。
8
+
5
9
  ###前提・実現したいこと
6
10
  ・javaでExcelファイル("sample2.xlsx")から値を取得し、
7
11
  その値を新規のExcelファイル("jresult.xlsx")に書き込み保存するシステムを作っています。
@@ -13,16 +17,17 @@
13
17
  ⇒結果ファイルを開くと、以下のメッセージが表示されファイルの中身が見られない。
14
18
  「Excelファイル’○○○.xlsx’を開くことができません。ファイル形式またはファイル拡張子が正しくありません。 ファイルが破損しておらず、ファイル拡張子とファイル形式が一致していることを確認してください。」
15
19
 
16
- ###発生している問題・エラーメッセージ
20
+ ###発生している問題・エラーメッセージ(2016.04.26更新)
17
21
 
18
22
  ```
19
- Exception in thread "main" java.lang.IllegalArgumentException: Sheet index (0) is out of range (no sheets)
23
+ Exception in thread "main" java.lang.NullPointerException
20
- at org.apache.poi.xssf.usermodel.XSSFWorkbook.validateSheetIndex(XSSFWorkbook.java:1382)
21
- at org.apache.poi.xssf.usermodel.XSSFWorkbook.getSheetAt(XSSFWorkbook.java:1024)
22
- at main.HelloWorld2.main(HelloWorld2.java:32)
24
+ at main.HelloWorld2.main(HelloWorld2.java:43)
23
25
  ```
26
+ エラーの発生したソースコード
27
+ 「cell2.setCellValue(richStr);」
24
28
 
25
- ###該当のソースコード
29
+ ###該当のソースコード(2016.04.26更新)
30
+
26
31
  ```
27
32
  package main;
28
33
 
@@ -55,7 +60,8 @@
55
60
  Dir.mkdir();//結果ファイル格納ディレクトリ作成
56
61
  XSSFWorkbook outbook = new XSSFWorkbook();
57
62
  FileOutputStream out = new FileOutputStream(Dir + "\\" + "jresult.xlsx");
58
- XSSFSheet sheet2 = outbook.getSheetAt(0);
63
+ XSSFSheet sheet2 = outbook.createSheetAt();
64
+ //XSSFSheet sheet2 = outbook.getSheetAt(0);
59
65
  XSSFRow row2 = sheet2.getRow(2);
60
66
  if (row2 == null){
61
67
  row2 = sheet2.createRow(2);