StarSuite 8 マクロ移行ウィザード・ユーザーズガイド
  Sök endast i den här boken

第 3 章 マクロ移行ウィザードからの出力

この章では、マクロ移行ウィザードの出力について説明します。

マクロ移行ウィザードは、次の出力を生成します。

  • StarSuite Basic に移行されたマクロを持つ、 StarSuite 8 と同形式の移行済み Microsoft Office ドキュメント。


    注 –

    元の Microsoft Office ドキュメントは変更されません。


  • 移行されたドキュメントに対してそれぞれ生成される HTML 形式の結果ファイル。結果ファイルは、移行したドキュメントと同じディレクトリに作成されます。

    ファイル名の書式は、 <original_filename>_results.html です。

  • 移行されたドキュメントの概要、API の使用、移行時に発生したエラーが含まれる結果スプレッドシート。

移行されたマクロが含まれる移行済みドキュメント

マクロ移行ウィザードは、Microsoft Office ドキュメントを対応する StarSuite 8 形式に移行します。ウィザードは、VBA マクロを StarSuite Basic に移行し、また移行されるマクロにコメントを追加します。

生成されるコメント

選択したオプションに応じて、マクロ移行ウィザードは、HTML 結果ページと同様に、移行されたマクロコードにコメントを挿入します。このコメントは、記号の移行状態に関する情報を提供します。


注 –

移行されたマクロにコメントを含める方法については、「Visual Basic マクロを StarSuite Basic マクロに移行する」を参照してください。


表 3–1 マクロ移行ウィザードによって生成されるコメントは、以下のとおりです。

生成されるコメント 

説明 

IDENTITY

ステートメント内の記号が記号表に定義されることを示します。これにより、記号は VBA から StarSuite Basic に直接対応づけられます。 

NOT-YET- IMPLEMENTED

ステートメント内の記号は記号表に定義されますが、少なくとも 1 つの記号が宛先コード用に NOT-YET-IMPLEMENTED 属性を持つことを示します。

MAPPED TO

元のソースコードが、コメントに続くコードに対応づけられたことを示します。 

MAPPED FROM

元のソースコードがコメントに続くことを示します。 

UNKNOWN

ソースコードまたは記号表から解決されなかった記号を示します。このコメントは、通常、外部定義の記号を示します。ウィザードは、UNKNOWN コメントを次の種類の記号に割り当てます。

  • ドキュメント内で参照されるが、別のドキュメントまたはテンプレートで定義されている記号。

    たとえば、Document2.Module2 は、Document1.Module1 に定義されている functionDoc1() を呼び出すとします。ウィザードが Document1.Module1 の記号表にアクセスできない場合、functionDoc1()UNKNOWN が付きます。

  • OCXActiveXDLL などの外部コードライブラリに定義されている記号。これらの記号には対応表が提供されません。

    たとえば、VBA の Direct3D8 ライブラリへの参照が VB プロジェクトに含まれている場合は、そのライブラリの参照オブジェクトと関連記号に UNKNOWN が付きます。

  • 予期せぬ使用法により、移行時にウィザードが解決できなかった記号。


例 3–1 PASSTHROUGH (IDENTITY)

'PASSTHROUGH (IDENTITY):  "XlChartLocation_xlLocationAsObject"
'MAPPED TO : "ActiveChart.setLocation(XlChartLocation_xlLocationAsObject,
"Tabelle1")"
'MAPPED FROM: "ActiveChart.Location(Where:=XlChartLocation_xlLocationAsObject,
Name:="Tabelle1")"
ActiveChart.setLocation(XlChartLocation_xlLocationAsObject, "Tabelle1")
'UNKNOWN: "Debug".    
'PASSTHROUGH (NOT YET IMPLEMENTED): "ActiveWorkbook.Worksheets.Creator"
Print  ActiveWorkbook.Worksheets.Creator


例 3–2 PASSTHROUGH (NOT YET IMPLEMENTED)

'MAPPED TO : "ActiveChart.setLocation(XlChartLocation_xlLocationAsObject,
 "Tabelle1")"
'MAPPED FROM: "ActiveChart.Location(Where:=XlChartLocation_xlLocationAsObject,
Name:="Tabelle1")"
ActiveChart.setLocation(XlChartLocation_xlLocationAsObject, "Tabelle1")    
'UNKNOWN: "Debug".
'PASSTHROUGH (NOT YET IMPLEMENTED): "ActiveWorkbook.Worksheets.Creator"
Print  ActiveWorkbook.Worksheets.Creator


例 3–3 MAPPED FROM, MAPPED TO and UNKNOWN

'MAPPED TO  : "ActiveChart.setLocation(XlChartLocation_xlLocationAsObject,
 "Tabelle1")"
'MAPPED FROM: "ActiveChart.Location(Where:=XlChartLocation_xlLocationAsObject,
Name:="Tabelle1")"
ActiveChart.setLocation(XlChartLocation_xlLocationAsObject, "Tabelle1")
'UNKNOWN: "Debug".
Print ActiveWorkbook.Worksheets.Creator"

結果 HTML ファイル

マクロ移行ウィザードは、各移行ドキュメントに対して HTML 形式の結果ファイルを提供します。このファイルには、元のマクロと移行後のコードが含まれます。

図 3–1 Excel スプレッドシートの結果 HTML ファイル

結果 HTMl ファイル

結果 HTML ファイルでは、表の最初の行に元のドキュメントの名前が含まれます。2 行目には、移行されたドキュメントの StarSuite Basic ライブラリの名前が含まれます。残りの行には、移行後のコードおよび元のマクロコードが表示されます。各行は、1 つのモジュールに対応します。最初の列には、モジュールの名前が表示されます。2 列目には、StarSuite Basic に移行されたコードが表示され、3 列目には移行されたコードの行数が示されます。4 列目には、元の VBA コードが表示されます。最後の列には、元のマクロの行数が示されます。

結果スプレッドシート

結果スプレッドシートには、次のシートが含まれています。

  • 「概要」シート

  • 「API 使用法情報」シート

  • 「エラーと警告」シート

「概要」 シート

「概要」シートには、分析結果の概要が含まれます。

図 3–2 「概要」 シート

「概要」シート - 結果スプレッドシート

表 3–2 「概要」 シートの説明

記録される情報 

説明 

日付と時刻 

分析を実行した日付と時刻。 

プロダクトバージョン 

結果を生成したウィザードの名前とバージョン。 

処理したドキュメントマクロなし 

マクロを含まないドキュメントの数。 

処理したドキュメントマクロあり 

マクロを含む Microsoft Office ドキュメントの数。ウィザードによって、この数がさらに次のカテゴリに分けられます。 

  • 完全に処理済み

  • 問題の数

  • 前処理の問題

  • 大きなモジュール

  • 解析の警告

  • その他の警告

  • 解析のエラー

  • その他のエラー

ドキュメントエラーなしに処理したドキュメント 

処理されなかったマクロを含むドキュメントの数。 

オリジナルと移行後のマクロコードの表示 

移行されたドキュメントについて、HTML 形式の結果ファイルを開くハイパーリンク。このファイルは、変換した StarSuite Basic コードと、元の VBA ソースコードを表示します。 

概要 

移行されたドキュメント内のマクロモジュールの統計概要。次の統計が表示されます。 

  • 名前 - 移行されたドキュメントの名前

  • ライブラリ - ドキュメント内のマクロライブラリの名前

  • モジュール - ドキュメント内のマクロモジュールの名前

  • 行カウント - コードの行数 (コメントも含む)

  • コードの行 - コードの行数 (コメントを含まない)

  • 手続きの数 - マクロモジュール内の関数とサブルーチンの数

  • パス - 移行されたドキュメントの場所

「API 使用法情報」シート

「API 使用法情報」シートは、移行されたドキュメントのマクロに含まれる API 記号の要約を提供します。

図 3–3 「API 使用法情報」シート

「API 使用法情報」シート - 結果スプレッドシート

表 3–3 「API 使用法情報」シートの説明

記録される情報 

説明 

名前 

移行されたドキュメントの名前。 

モジュール 

移行されたドキュメント内のマクロモジュールの名前。 

記号の所有者 

記号の目的を識別する名前。 

記号名 

移行されたドキュメント内のマクロ API 記号の名前。 

マップ元 

元のドキュメント内のマクロ API 記号の名前。 

参照数 

移行されたマクロでマクロ API 記号が使われている回数。 

パス 

移行されたドキュメントの場所。 

「エラーと警告」シート

「エラーと警告」シートは、移行時に発生したエラーメッセージと警告メッセージに関する要約を提供します。

図 3–4 「エラーと警告」シート

「エラーと警告」シート - 結果スプレッドシート

表 3–4 「エラーと警告」シートの説明

記録される情報 

説明 

名前 

移行されたドキュメントの名前。 

ライブラリ 

エラーまたは警告の原因となったマクロライブラリの名前。 

モジュール 

移行されたドキュメント内のマクロモジュールの名前。 

メッセージ 

エラーメッセージまたは警告メッセージ。 

ディレクトリ 

移行されたドキュメントの場所。