X-Git-Url: https://satomichan.jp/gitweb/?p=nucalgen;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fjp%2Fsatomichan%2Fnucalgen%2FNucalgen.java;fp=src%2Fmain%2Fjava%2Fjp%2Fsatomichan%2Fnucalgen%2FNucalgen.java;h=f37b8b0dbebebaffa6402d8623e2246b283dc679;hp=690d47d439f0880de9e1bd1804a6ccd9f23407a8;hb=7deca54cbc7880747faac12d9042666d78f5355f;hpb=d3d8e4a3afbaf682d390193578a235dfa94db047 diff --git a/src/main/java/jp/satomichan/nucalgen/Nucalgen.java b/src/main/java/jp/satomichan/nucalgen/Nucalgen.java index 690d47d..f37b8b0 100644 --- a/src/main/java/jp/satomichan/nucalgen/Nucalgen.java +++ b/src/main/java/jp/satomichan/nucalgen/Nucalgen.java @@ -2,6 +2,7 @@ package jp.satomichan.nucalgen; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -96,6 +97,7 @@ public class Nucalgen { } //「栄養計算」行 + List usedTableList = new ArrayList(); int rowIndex = 3; for(int i = rowIndex; i < lines + 3; i++,rowIndex++) { Row thisRow = calcSheet.createRow(rowIndex); @@ -113,6 +115,8 @@ public class Nucalgen { thisCell.setCellFormula("IFERROR(VLOOKUP($B" + (rowIndex + 1) + "," + aColumn.getTable() + "!$B$12:$BL$2500,MATCH(\"" + aColumn.getName() + "\"," + aColumn.getTable() + "!$B$11:$BL$11,0),FALSE) " + div100 + ",\"\")"); colIndex++; + + usedTableList.add(aColumn.getTable()); } } @@ -171,6 +175,21 @@ public class Nucalgen { rowIndex = generateGroupSum(calcSheet, csPool, rowIndex, namedAreaMap); } + + //未使用表シート削除 + for(int si = outputWorkbook.getNumberOfSheets() - 1 ; si >= 1 ; si--) { + String sheetName = outputWorkbook.getSheetName(si); + boolean used = false; + for(String usedTable : usedTableList) { + if(usedTable.equals(sheetName)) { + used = true; + } + } + if(!used) { + outputWorkbook.removeSheetAt(si); + } + } + //ブック出力 FileOutputStream outputXlsxFile = new FileOutputStream(outputXlsxFileName); outputWorkbook.setActiveSheet(0);