# 帳票作成支援ツール マニュアル

## はじめに

帳票作成支援ツールは、測定コマンドが出力するCSV形式の測定結果ファイル(以降、測定結果CSVファイルと記載)を読み込み、
Excel形式の帳票として出力・表示するExcelブックです。
GUIツールから利用することもできます。

本マニュアルは、帳票作成支援ツール(以降、本ツールと記載)の使用方法について説明します。

本マニュアルの対象バージョンは R20150327 です。

- 測定コマンド、GUIツールの使用方法は、それぞれのマニュアルやヘルプを参照してください。
- マニュアル内のExcelの画面は、Excel 2010で作成しています。

### 目次

### 本マニュアルでの名称表記

本マニュアルで使用しているアプリケーション名などの正式名称、表記については下記をご覧ください。

本文中の表記 | 正式名称
--- | ---
Microsoft | Microsoft®
Windows | Microsoft® Windows® Operation System
Windows 8.1 | Windows® 8.1 Operation System
Windows 8.1 Update | Windows® 8.1 Update Operation System
Excel | Microsoft® Excel®
Excel 2010 | Microsoft® Excel® 2010
Excel 2013 | Microsoft® Excel® 2013
Visual Basic | Microsoft® Visual Basic®
VBA | Microsoft® Visual Basic® for application

### 商標について

Microsoft、Windows、Microsoft Excel、Microsoft Visual Basicは、米国Microsoft Corporationの米国およびそのほかの国における登録商標または商標です。

そのほか、本ヘルプに記載されている会社名、商品名は、各社の商標または登録商標です。

### 改版履歴

版数 | 改版内容
--- | ---
R20150327 | 初版

# 機能概要

帳票作成支援ツールは測定結果CSVファイルをわかりやすく表示するExcel上で動作するツールです。

1. 動作環境
2. ツール構成
3. 帳票の概要

## 動作環境

※本ツールはExcelマクロ(VBA)を使用しています。マクロが実行できない場合は、本ツールは利用できません。
ご利用の環境にあわせてExcelの設定をお願いします。

本ツールは次のOSとアプリケーションの組み合わせで動作を確認しています。

環境 | バージョン
--- | ---
OS | Windows® 8.1 Pro
アプリケーション | Microsoft® Excel® 2013

本ツールは日本語の環境に対応しています。
動作環境、測定結果CSVファイルの組み合わせは以下のとおりです。

帳票作成支援ツール | 日本語版
--- | ---
動作環境 | OS (∗1) | 日本語版
Excel (∗1) | 日本語版
測定コマンド | 日本語・英語 (∗2)
GUIツール | 日本語・英語 (∗2)
測定結果CSVファイル | ファイルパス | 多言語
ファイル名 | 多言語
文字コード | Shift_JISまたはUTF-8 (∗3)

1. ∗1 「動作環境」に記載されたOSとアプリケーション(Excel)のバージョンの組み合わせに対応しています
2. ∗2 測定コマンド、GUIツールには、日本語版、英語版の区別はありません
3. ∗3 右横書き文字(アラビア語など)や結合文字、合成文字など表示できない文字があります

## ツール構成

本ツールは、Excelブック(ファイル名：FormatTool.xls)です。

- Excelから開いて利用するか、GUIツールの結果表示から呼び出します。
- 本ツールをExcelで開くと、本ツールのバージョンが「MainSheet」シートの右上に"Rnnnnnnnn"の形式で表示されます。
  本マニュアルの表紙に記載されているバージョンと同じであることを確認してください。

ファイル名 | 説明
--- | ---
FormatTool.xls | 帳票作成支援ツール 日本語版
index.html (参照ファイルは省略) | 本マニュアル 日本語版

### 帳票の概要

本ツールは測定結果CSVファイルから以下のようなExcel形式の帳票を作成します。

詳細は「帳票に追加される内容」を参照してください。

- 帳票には測定結果CSVファイルのデータをすべて含みます。
- 色や罫線などのスタイルを設定します。
- ソースコード整形整形オプションの結果を反映します。

1. 測定の種類を表示します。
2. 測定結果を表示します。
3. 実行結果を表示します。

#### 帳票に追加される内容

帳票に追加される内容について説明します

1. 測定結果リストにしきい値の情報を追加
   各項目の"しきい値（上限値および下限値）"を設定することができます。
   しきい値を超えた値のセルは、色付きで表示されます。
   （詳細は「しきい値チェック機能の操作」を参照）
2. 測定結果リストに比率に関する列を追加
   測定結果リストに対して、各項目間の比率に関する列を追加します。
   基本行数・差分行数

   列名 | 説明
   --- | ---
   ELOC/TLOC | 総行数に対する有効行の比率
   CLOC/TLOC | 総行数に対するコメント行の比率
   BLOC/TLOC | 総行数に対する空白行の比率

   構造メトリクス

   列名 | 説明
   --- | ---
   ELOC/FLOC | 関数の総行数に対する有効行の比率
   CLOC/FLOC | 関数の総行数に対するコメント行の比率
   BLOC/FLOC | 関数の総行数に対する空白行の比率

   RESTYLE BOTH指定時の共通項目

   列名 | 説明
   --- | ---
   TLOC/RTLOC | 総行数における整形の比率
   ELOC/RTLOC | 有効行における整形の比率
   CLOC/RTLOC | コメント数における整形の比率

   基本行数・差分行数

   列名 | 説明
   --- | ---
   CODE/RCODE | コンパイル行数における整形の比率
   PREP/RPREP | プリプロセス行数における整形の比率
   ICLOC/RICLOC | インラインコメント行数における整形の比率
   DOC/RDOC | 仕様コメント行数における整形の比率
   REM/RREM | 一般コメント行数における整形の比率

3. 測定結果リストの列名の説明を追加
   TLOC、FLOCなどの略語について、説明を追加します。
4. 測定結果リストに集計行の追加
   測定結果リストの行データに対して、ソースコードファイルのフォルダーなどをキーとして集計を行い、集計行に表示します。

   測定 | 集計キー
   --- | ---
   基本行数 | DIR列
   差分行数 | DIR列
   構造メトリクス | DIR列およびFILE列

   構造メトリクスの集計行には、以下の列に平均値を表示します。"-“や空行のセルは無視されます。
   CYCLO, CYCLOWC, BLANCHS, CNDOPS, NESTS ∗
   ∗ NESTS以降の項目は本バージョンではサポートされていないため、項目自体がグレイアウトされます。
   詳細については、「出力されない項目のグレイアウト化」を参照してください。
5. 測定結果リストのグループ設定
   測定結果リストの行とデータに対してグループを設定します。
   - 行は、データ行の集計単位にグループを設定します。
   - 列のグループ化の範囲は次のとおりです。

     測定 | グループ化の範囲
     --- | ---
     基本行数 | TLOC列からSKIP列まで
     差分行数 | TLOC列からSKIP列まで
     構造メトリクス | TLOC列からBLOC列まで ∗

     ∗ 測定時にDIFF_COUNT_MODE=EXTを指定した場合、EQU_ELOC列からMODDEL_SKIP列までをグループ化
6. 測定結果リストにオートフィルター設定
   列名にフィルターを設定します。
7. 出力されない項目のグレイアウト化
   次に挙げる項目は、本バージョンの構造メトリクスの測定では出力されないため、グレイアウトして表示します。
   EVALR, EVALS, AVALS, PARMS, FANIN, FANOUT, FANIN_FUNC, FANIN_PARAM, FANIN_GVAL, FANOUT_FUNC, FANOUT_PARAM, FANOUT_GVAL
8. 実行情報の再設定 測定結果CSVファイルの以下の値が"-“の場合に、ファイル内の値から再計算し、表示します。
   - 処理対象ファイル数
   - カウント成功ファイル数
   - カウント失敗ファイル数

## ツール操作

この章では、帳票作成支援ツールの操作方法について説明します。

- ツール画面の表示
- ファイル指定による操作
- ドラッグ＆ドロップによる操作
- しきい値チェック機能の操作
- ソートの指定
- GUIツールからの利用
- ソースコード整形の結果について

### ツール画面の表示

帳票作成支援ツールの画面を表示するには、FormatTool.xlsを、Excelから開きます。
帳票作成支援ツールを終了する場合は、通常のExcelブックの操作と同様に、ブックを終了するかExcelを終了させます。

1. ツールのバージョンを表示します。
2. 「ファイル指定による操作」に使用します。
3. 「ソートの指定」に使用します。

### ファイル指定による操作

測定結果CSVファイルを指定して、帳票を作成する手順を説明します。

1. 測定結果CSVファイルを読み込みます。
   MainSheetシートの「CSVファイルを開く」ボタンを押下します。
2. ファイルを開くダイアログを表示します。測定結果CSVファイルを選択し、「開く」ボタンを押下します。
3. スクリプトが動作し、読み込んだ測定結果CSVファイルを帳票形式に変更します。
   シートを保存する場合は、Excelブック形式で保存してください。

### ドラッグ＆ドロップによる操作

エクスプローラーから本ツールへ測定結果CSVファイルをマウスでドラッグ＆ドロップし、帳票を作成する手順について説明します。

1. Excelのクライアントエリア内に、エクスプローラーから測定結果CSVファイルをドラッグ＆ドロップすることで読み込みます。
2. スクリプトが動作し、読み込んだ測定結果CSVファイルを帳票形式に変更します。

### しきい値チェック機能の操作

しきい値を設定する方法について説明します。

帳票作成を行う前に、各項目に対して"しきい値(上限値および下限値)"を設定することができます。
この機能を利用することで、設定した範囲から外れている値は、帳票作成時に自動的に色を付けて表示されるため、 チェックすべきファイルや値が見つけやすくなります。

1. 帳票作成支援ツールの‘MainSheet’シートから、「しきい値設定」を クリックし(または[threshold]タブ選択)、‘threshold’シートを表示します。
2. ‘threshold’シートに表示された各項目に対して、しきい値として設定したい値を入力し、選択の欄にチェックを入れます。
   - 入力方法などの詳細は、シート上段にある説明を参照してください。
   - しきい値を設定した状態でExcelファイルを保存し配布することで、しきい値の設定を複数の利用者の間で共有することができます。
   1. 下限値と上限値の入力欄です。
   2. しきい値の選択欄です。
3. ‘MainSheet’シートから、測定結果CSVファイルを読み込ませると、作成された帳票上で、しきい値を外れた値のセルが色付き(ローズ)で表示されます。
   1. 項目名の下に(下限値,上限値)を表示します。
   2. しきい値を外れた値は色付き(ローズ)で表示します。

### ソートの指定

測定結果リストのデータ行を集計前にソートを行うかどうかを指定します。
指定には「一覧をソートする」チェックボックスを使用します。

- チェックなし
  ソートされません。 測定結果CSVファイルの並びのとおりに帳票を作成します。
- チェックあり
  集計処理を行う前に、測定結果リストのデータ行をソートします。
  - 大文字と小文字を区別します。
  - ソートキーは、集計キーと同じ列です。

  測定 | ソートキー
  --- | ---
  基本行数 | DIR列
  差分行数 | DIR列
  構造メトリクス | DIR列およびFILE列

  測定結果リストは、フォルダー単位にソートされます。
  フォルダーはパス長が短い順にソートされます。

### GUIツールからの利用

GUIツールから、本ツールを利用することができます。

GUIツールの使用方法については、GUIツールからヘルプを参照してください。

本ツールのしきい値を設定する場合は、あらかじめ「しきい値チェック機能の操作」の手順にしたがって、しきい値を設定してください。

### ソースコード整形の結果について

ソースコードの行数を「整形する」「整形しない」の両方で測定した場合の扱いについて説明します。

1. シート
   「整形する」「整形しない」の両方を含む測定結果CSVファイルから帳票を作成した場合、"both"ではじまる名前のシートが追加されます。
2. マージ
   「整形する」「整形しない」の両方をマージし、1つの測定結果リストとして表示します。
   マージ処理では、「整形しない」測定結果のデータ行に対して、以下の条件にあう「整形した」データ行の列データを追加します。
   - 基本行数または差分行数の場合、DIR、FILE、OLDDIR、OLDFILEの各列の値が一致する行をマージします
   - 構造メトリクスの場合、DIR、FILE、FUNCの各列の値が一致する行をマージします
   「一覧をソートする」チェックボックスがチェックされている場合、「整形する」「整形しない」の両方をソート後、マージします。
3. 追加される列データ
   下記の列を追加します。
   各測定共通

   列名 | 説明
   --- | ---
   TLOC/RTLOC | 総行数における整形の比率
   ELOC/RTLOC | 有効行における整形の比率
   CLOC/RTLOC | コメント行数における整形の比率

   基本行数または差分行数

   列名 | 説明
   --- | ---
   CODE/RCODE | コンパイル行数における整形の比率
   PREP/RPREP | プリプロセス行数における整形の比率
   ICLOC/RICLOC | インラインコメント行数における整形の比率
   DOC/RDOC | 仕様コメント行数における整形の比率
   REM/RREM | 一般コメント行数における整形の比率

## スクリプトを変更して利用される方のために

本ツールのスクリプトを変更して利用される方のために、ブックやシートの保護を解除する方法について説明します。

### ブックやシートの保護解除

ブックやシートの保護の解除は以下の方法で行います。

1. 本ツールをExcelで開きます
2. Excelの[ファイル]タブで「情報」を選択します
3. ブックの保護を解除します。
   ブックの保護を解除するには、「アクセス許可」の「ブックの保護」アイコンを選択し、「ブック構成の保護(W)」を選択してください。
4. シートの保護を解除します。
   シートの保護を解除するには、「アクセス許可」のシート名の右の「保護解除」を選択します。
   「MainSheet」と「parameter」の2つのシートの保護を解除してください。
5. スクリプトを修正します。
   スクリプトを表示するために、Visual Basic Editor(以降Editor)を使用します。
   [開発]タブで「Visual Basic」を選択し、Editorを起動してください。
   [開発]タブを表示するには、Excelの[ファイル]タブで「オプション」を選択し、 「Excelのオプション」ダイアログを表示します。次に、「リボンのユーザー設定」を選択し、 「リボンのユーザー設定(B)：」の「開発」チェックボックスにチェックを入れて「OK」を選択します。
6. Editorのプロジェクトの"Microsoft Excel Objects"の"ThisWorkbook"を ダブルクリックして、ThisWorkbook"のコードを表示します。
7. “Workbook_Open"サブルーチンの以下の箇所(赤字)をコメントアウト(緑字)します。
   修正前

       Private Sub Workbook_Open()
       ''' ツールブックのオープン処理
           Set CsvApplication = Application

           'スクロールバー制限。下記、記述をコメントアウトすると解除できます。
           Worksheets("MainSheet").ScrollArea = "A1:D13"
       End Sub

   修正後

       Private Sub Workbook_Open()
       ''' ツールブックのオープン処理
           Set CsvApplication = Application

           'スクロールバー制限。下記、記述をコメントアウトすると解除できます。
       '    Worksheets("MainSheet").ScrollArea = "A1:D13"
       End Sub

8. Editorで修正したソースコードを上書き保存し、Editorを終了します。
   本ツール(Excelファイル)を保存後、再度開くと、本ツールに含まれるすべてのスクリプトを参照することができます。

## 注意制限事項

1. 帳票の作成対象
   本ツールはCSVファイルからExcel形式の帳票を作成する処理を行うため、ブックのオープンを監視し、以下の条件をすべて満たすファイルを測定結果CSVファイルとみなして帳票を作成します。
   - ファイルの拡張子が".CSV"(大文字・小文字問わず)である
   - アクティブシートの先頭"A1"のセルの値が"Execute Mode" (文字列)である
2. 帳票作成時のシートの操作
   本ツールは、Excel形式の帳票の作成時に、測定結果CSVファイルを開いたシートをアクティブ(選択された状態)に設定し、編集を行います。
   Excel形式の帳票を作成中はほかのシートをアクティブ状態にしないでください。
3. ドラッグ＆ドロップによる操作
   2つ以上の測定結果CSVファイルを同時にドラッグ＆ドロップした場合、帳票の作成処理に失敗する場合があります。
   測定結果CSVファイルは必ず１つずつ開いてください。帳票の作成処理に失敗した場合は、いったんExcelを終了してから、再度操作を行ってください。
4. 本ツールの変更
   本ツールのシート名を変更したり、シートを編集したりしますと、本ツールが正常に動作しなくなる可能性があります。
5. ソースコード整形
   “-RESTYLE BOTH"を指定して測定した測定結果CSVファイルの場合、整形していないデータ行に対して、条件により整形した列データを追加します。
   条件は以下のとおりです。

   測定 | ソースコード整形以外のオプション
   --- | ---
   基本行数 または 差分行数 | DIR、FILE、OLDDIR、OLDFILEの各列の値が一致した場合
   構造メトリクス | DIR、FILE、FUNCの各列の値が一致した場合

6. バージョン
   本ツールは、本ツールと同じ配布物件に含まれるプログラムで測定した結果をサポートしています。
   ほかのバージョンで測定した結果を指定した場合、帳票が正しく作成されない場合があります。
7. 多国語使用時の測定結果CSVファイルの文字コード
   測定対象のソースコードファイルのパス、ファイル名、関数名に多国語を含む場合、測定結果はUTF-8形式である必要があります。
   インストール直後の設定では、測定結果CSVファイルがシステムロケールのコードページで出力されるため、本ツールで開いた際に文字化けが発生し、帳票が正しく作成できません。
8. UTF-8形式のファイル
   UTF-8形式の測定結果CSVファイルから帳票作成を行った場合、以下の制限があります。
   - 右横書き文字(アラビア語など)や結合文字、合成文字などの文字は表示できません。