前回の話の続きですが、
まずの要件定義(実現の可否を見極める為のコンサルティング)
の段階では、高速のリアルタイム画像処理関係はなんとか
うまく行きそうでGOサインを出し、
いざ、開発へ取り掛かったしょっぱな、設計の段階から
ちょっとものすごいことになっています。
まず、ご依頼主の投資顧問コンサルタントの先生が作られている
Excelのシートのセルには、関数の数式がビッシリ入った所が
いくつもあって、お互いを呼び出しあっていますのでまともに
RSSと連動させるとRSSでデータが更新される度に、
再帰呼び出しが起こって、しばらく経つとオーバーフローを
起こします。
これを回避するためには、関数部をマクロ化してVBAで
組み直すしかありませんが、
しかも、先生の理論から導いたというその数式(セル関数)は、
長年やってきた私も初めて知ったのですが、セルの制限
(たぶん、1024文字?)をオーバーするほどの長さとなっていて、
備考:「Excel2003 の仕様および制限」では、
セルの内容の長さ (文字列) 32,767 文字。
セルに表示できるのは 1,024 文字まで。
数式バーでは 32,767 文字すべての表示が可能。
と明記されています。
仕方なく、まだまだ続きのある(IF,NOT,AND,OR,ABS,などが
オンパレードの)長い長ーい数式を分割して複数のダミーセル
を設けて分散させていらっしゃいます。
それで、私がその数式をマクロで処理するために、
紙に書いて展開してみたところ、
な、なんと、A4に3枚に渡り数式びっしりのボリューム
となって、階層を辿ると深い所で7階層、、、1セルだけでも
=IF(
AND(
,
,
),
,
IF(
OR(
,
,
AND(
OR(
AND(
,
),
AND(
OR(
,
),
,
)
),
,
,
),
AND(
,
),
AND(
,
,
OR(
,
)
),
AND(
OR(
,
),
,
),
AND(
,
,
),
AND(
,
,
,
OR(
,
),
OR(
,
AND(
,
)
),
,
,
OR(
AND(
,
),
AND(
,
,
,
,
,
,
,
),
AND(
,
)
),
)
),
,
IF(
OR(
AND(
,
),
AND(
,
)
),
,
0
)
)
とまぁこんな感じで、、、
(数式等は公開できませんので省略しています。)
マクロに書き直した数式を字下げすると、
実に、8段下げにも及ぶとてつもない感じです。。。
\(◎o◎)/!
VBAに展開するだけでも有にまる1日掛かりの作業
となりました。
ご自分の長年の理論に基づいてこの数式を組み、日々、
精度向上のためのこのセル組み込みの横長の数式を
ひたすらメンテされている先生の頭の中は、凄すぎです!
▼賢くマクロ作りをマスターするのコツが満載▼
プロが直伝する「エクセルマクロ成功の鉄則」教材セット