Excel VBAで掲示板を作る

掲示板っていったら何を使って作る?普通はHTMLを使うよね?でも今私がやってる案件は違うんだよね…。

まず地獄なのが

・ブラウザがInternet Explorer 11

・サーバーはファイル共有サーバーしか無い

・データベースは使えない

という2つなんだよね…。まあ前者はfetchが使えないとかその程度で済むんだけど、後者があまりにも痛いんだよね…。

そのくせして

・投稿の書き換えは本人以外はできない

・ログイン画面は無し。でもユーザーは判別できるようにしてほしい

真っ先に浮かんだのはActiveXだった。でもMicrosoftはInternet Explorerを廃止するってすでに発表して久しい。そうなるとActiveXも使えなくなるのも時間の問題。

そうなるとWeb技術だけでどうにかするっていうのは無理だなってなった。

そこで浮かんだのがC#を使ってユーザー判別だけするっていう手法

ただここで問題発生。どうやってページに対してユーザーIDを渡す?

もしクエリパラメーターで渡そうもんならそのクエリパラメーターを利用してユーザー偽装して投稿の書き換えができてしまう。それは求められてる要件を満たせない。

となるとActiveX無くして求められた要件を満たす手段は無いという結論に至り、「あ、これはダメだ」って思いました。

ただやはりそこはプログラマーの意地ってやつですね。何かいい方法が無いかと模索してたんですよ。

そして見つけました。1個方法を。

それは、C#でサーバーを作ること

各ユーザーの手元にサーバーが乱立はするけど、この方法ならWeb技術でどうにかなる。

そう思って私はコードを書きました。そして実行したところで再びトラブル

なんと、ウイルスバスターにウイルスとしてブロック&削除されました。

私のPC上だけの話ならウイルスバスターの例外リストに登録してやればいいだけの話ではありますけど、これは「案件」。ウイルスバスターにブロック&削除されるようなものをリリースすることはできません。

もはや八方塞がり。どうすることもできません。

そこでふとExcelを思い出しました。

実はこの案件、最初は「Excelつかうのとかどうかな?」と打診されていたんです。

もちろんそんなアホなことはしたくないのでなんとかWebでできないかと全力で模索していたんですけど、詰んでしまった以上、もう打診受けてたExcelを使わざるを得まいと腹を括ることにしました。

そもそもExcelって掲示板作るソフトウェアじゃないんだけどなぁ…

さて、そこからは地獄です。だって掲示板を作るための便利機能なんてExcelにありゃしないのですから何もかも1から私が自分で作らないといけないんです。

そんなこんなで開発・デバッグを続けてはや3ヶ月。もうすぐ完成というところまで進んできました。

しかし、ここで思わぬ話が舞い込む。それは「仕様追加」

別にできないことではなかったので受けちゃいましたけど、今ではちょっと後悔しています。

だってもうコード量が多いんですよ…。

もう何行書いたよ…。

そもそもExcel VBAとか完全専門外言語なんだよ…。

まあそんなふうに絶望しながらも作り続けてます。

今月中に終わるといいな…

ときめきアイドルスコアランキングのアップデート

平成31年1月15日にオンラインサービスを終えたときめきアイドル

当然公式のスコアランキングもなくなる

そこで平成30年11月10日頃から始まったときめきアイドルスコアランキングの開発プロジェクトですが、始まってから5ヶ月以上の月日が流れ、オンラインサービス終了と共に始まったサイト運営も、かれこれ3ヶ月ちょっととなりました

当初はOCRエンジンもなく、スクリーンショットと共に自己申告での投稿でした

それがときめきアイドル1周年記念の日にOCRエンジンを導入し、今日、OCRエンジンと投稿サイトをまた更新しました

些細なアップデートと思われるものでも、みんなに楽しんでもらいたくて色々考えてきました

サイトはときめきアイドルがなくなるまで改良をひたすら重ね、みんなのためのランキングサイトを作るため、これからももっともっとアップデートを重ねていきたいと思っていますので、要望とかあったらTwitterでもなんでも言ってほしいです