フォーミー

Forme

English

Excelでシステムを作ろう

世の中にはExcelより優れたシステムを構築できるエンジニアは多くいますが、Excelしか支給されていない、予算が無い 、複雑なシステムを組む段階ではない等の事情でExcelしか使えない現場も多くあるのが事実です。そこでデータ入力、抜き差し印刷などよく使用されそうなマクロを Windows、Mac両OS上のExcelで使用できる様に開発したのが、FormeCollector2とFormeSurveyです。

5つのメリット

メリット1 : 既存の資産の有効活用

以前、"紙Excel"という言葉がインターネット上で議論を巻き起こしましたが、 議論があるせよ印刷専用に作成されたExcelは資産であることに変わりはありません。 FormeCollector2、FormeSurveyはそれらを活用する事ができます。

メリット2 : データとシステムの分離

紙からExcelへのデータ入力で問題なのは、多くの場合データとシステムがごちゃ混ぜになっている点でしょう。 別のシステムでデータを再利用しようとしても、データの前処理に手間取る可能性があります。 Formecollector2ではデータはすべてCSVデータとして、バックアップフォルダへ移動します。 また、フォルダの自動監視機能が付いているのでマスターシートとしての運用に適しています。

メリット3 : マクロ、VBA管理

Excelのマクロ、VBAは業務改善に大きな効果を発揮しますがメンテナンスがしづらい、 引き継ぎが現実的にできないなどの問題を抱えています。FormeCollector2,FormeSurveyはベースとなるマクロを外部管理をし、 指定したVBAプログラマーのみにベースの上でプログラミングをさせる事で管理を容易にします。最悪、引き継ぎがうまく行かなくても ベース機能まで失われることはありません。

メリット4 : 多様性と学習補佐

FormeCollector2はWindows,Mac両方のExcelは勿論、フリーの表計算ソフトであるLibreOffice Calcにも対応しており、 選択肢が大きく増えます。更に日本語環境以外ではラベルが英語に切り替わるようになっています。
Windows版Excel限定ですが、VBAのサンプルコードや技術情報が必要な方には有料のアフターサービスも用意されています。

アフターサービスを申し込む。

メリット5 : MITライセンス

FormeCollector2,FormeSurvey自体はMITライセンスです。その為、改変・配布が自由にできます。

・・・

使用例を見る。

FormeCollector2

FormeやFormeSurveyで出力されたCSVデータを集約するのに適したマクロシートです。フォルダを指定し、キーワードを 指定するだけで関連するCSVデータを一つのテーブルにまとめます。

テーブルのオートフィルター機能と連動した抜き差し印刷機能や値を表示する機能が付いています。 すでに作成された文書フォーマットシートに印刷メニューや関数を挿入する方法なので既存の資産が有効に活用できます。
(注意:FormeCollector2上に文書フォーマットシートをコピーする必要があります。)

対応

Excel 2013,Excel 2016,Excel 2019,Excel 2011 for Mac,Excel 2016 for Mac

LibreOffice Calc(6.2.6.2以降)

Shift_jis,UTF-16,UTF-8

CSVデータ読み込み制限

  • Windows : 3MB
  • Excel 2011 for Mac : 1MB
  • Excel 2016 for Mac : 20KB
  • LibreOffice Calc : 15KB

1800000セル

Excel 2010 でも使用環境により対応できる可能性があります。問い合わせ

LibreOfficeではCSV読み込み文字コードはOS標準のみとなります。

参考

FormeSurveyで出力されたCSVデータ(150B)40データを展開する時間

  • Excel 2013(Fusion Windows8.1) : 0'07.75
  • Excel 2011 for Mac(Macbook Air late 2012) : 0'09.85
  • Excel 2016 for Mac(iMac mid 2011) : 1'20.25

注意

Excel for Mac では日本語の入ったパスは処理できない場合があります。

頭文字の0は省略されます。書式設定で補完してください。"001A" > "1A"

CSVデータベースを使用の際は使用環境が変わるごとにパスの再設定をしてください。

Excel 2016 for Macではスクリプトファイルを ~/Library/Application Scripts/com.microsoft.Excel/に移動する必要があります。 すでにcom.microsoft.Excelフォルダが存在する場合は中のスクリプトファイルのみ移動して下さい。

Finder > 移動(option) > Library > Application Scripts

機能紹介

  • CSVデータシート追加

    選択したCSVデータを新しいシートに展開します。

    • 1.CSVデータを選択
    • 2.新しいシートのテーブルに展開
  • CSVフォルダシート追加

    同一フォルダ内にある選択したCSVデータの名前の一部と一致したCSVデータを新しいシートに展開します。

    "_"で区切った先頭文字列と一致したCSVデータを展開します。"AAA_123.csv" であれば、 "AAA"が一致したCSVデータを展開します。

    • 1.CSVデータを選択
    • 2.新しいシートのテーブルに展開
  • CSVデータベースシート追加

    同一フォルダ内にある選択したCSVデータの名前の一部と一致したCSVデータを新しいシートに展開し、 バックアップフォルダへ移動します。シート上のボタンで自動的に選択フォルダを監視できます。自動監視も可能です。

    "_"で区切った先頭文字列と一致したCSVデータを展開します。"AAA_123.csv" であれば、 "AAA"が一致したCSVデータを展開します。

    formeCSVmodule Ver6からヘッダー行を一致させることで、ヘッダー行のあるCSVデータでも取り込めるようになりました。

    • 1.CSVデータを選択
    • 2.バックアップフォルダを選択
    • 3.新しいシートのテーブルに展開
  • ファイルの監視

    CSVデータベースシートを更新します。

  • CSVデータ貼り付け

    選択したCSVデータをアクティブセルに展開します。

    • 1.貼り付け先のセルを選択
    • 2.CSVデータを選択
  • CSVシートエクスポート

    アクティブシートのテーブルを選択フォルダにCSVデータとしてエクスポートします。

  • FormeQRCoderを起動

    FormeQRCoderを起動します。

  • 印刷メニュー追加

    印刷用のシートに印刷メニューを追加します。

    • 1.参照テーブルのあるシートをアクティブにする。
    • 2.印刷メニューをクリックする。
    • 3.選択セルダイアログで印刷用シートのメニューを追加するセルを選択する。
  • CSVデータパス取得

    選択したCSVデータパスをアクティブセルに展開します。

  • フォルダパス取得

    選択したフォルダーパスをアクティブセルに展開します。

  • CSVデータ名取得

    選択したCSVデータ名をアクティブセルに展開します。

  • 現在時刻取得

    現在時刻をアクティブセルに展開します。

  • A1を選択

    すべてのシートでA1を選択します。

  • プロジェクトロック解除コード

    FormeCollectorFree、FormeSurveyのプロジェクトロックを解除するコードを取得する為に必要です。

    FormeまたはForme lite の Throwawaykey Ver1.1が必要です。

    • 1.表示されているコードをThrowawaykeyに入力し、暗号文を作成
    • 2.暗号文をパソコンに送付
    • 3.パソコン上でthrowawaykey.txtを選択
    • 4.Throwawaykeyに表示されているPINコードを入力
    • 5.プロジェクトロック解除コードを表示されるので、VBAEditorでコードを入力してロック解除

Excel 2016 for Mac VBA

Excel 2016 for Mac の VBA は大きく制限を受けています。 FormeCollectorのスクリプトファイルを使用する事で機能の補完が出来ます。

  • FormeGetFiles : フォルダ内の可視ファイル名を全取得
  • FormeFolderChooser : フォルダパスを取得
  • FormeGetFileSize : 指定したファイルパスのサイズを取得
  • FormeLoadTxtD : テキストファイルを読み込み
  • FormeLoadTxt16 : UTF16テキストファイルを読み込み
  • FormeLoadTxt8 : UTF8テキストファイルを読み込み
  • FormeFileMove : ファイルを移動する。"ファイルパス,フォルダパス"を引数とする

すべて失敗すると"false"が返ってきます。

・・・

FormeSurvey

印刷用に作成されたExcelシートにCSVデータ出力機能を持たせるマクロシートです。 FormeCollectorと連動する事でアンケートなどの集計が容易にになります。 入力確認機能、入力内容クリア機能などを搭載しています。

注意

Excel 2016 for Macではボタンの移動が出来ない為、新しくボタンを設置して下さい。各ボタンにマクロを登録して下さい。

Excel for Mac では日本語の入ったパスは処理できない場合があります。

CSVデータのファイル名はシート名&固有IDとなります。

使用方法

  • STEP-1

    CSVデータ出力機能追加したいシートをFormeSurveyにコピーして、 menu palleteシート上のテーブルとボタンをコピーしたシートにカット&ペーストして下さい。 必ず、テーブルのヘッダ部分も選択して、カットして下さい。

  • STEP-2

    テーブルのセルをダブルクリックすると参照先セル設定ダイアログが表示されるので、 参照先セルを設定して下さい。

  • STEP-3

    各機能を確認後、menu palleteシートを削除しテーブルを隠します。

    テーブルのヘッダーANSWERにパスを設定すると、指定したパスにCSVデータが出力されます。

・・・

データ入力の時間を解析やプレゼンの時間に変えましょう。

Excel 及び Microsoft Excel、Windows はマイクロソフト社の商標です。 Macはアップル社の商標です。