Excelの改良されそうにない点

Excel のような前世紀の Win32 アプリケーションが 16 ビットレガシーを引きずりながら未だに生き残っているのが実に残念でならないのだけど、生物学的には Excel が生き残ってはならない理由はどこにもない。結局環境に適応したものが生き残る。こういうのが案外 100 年たっても今とまったく変わらず残ったりするのでかわいがってあげて欲しい。

なまじユーザーが多すぎるために、どんなささいな改良を加えても山ほど苦情が発生する点には心から同情する。

まったく期待しないけど、Excel のどうにかして欲しい点を何となくメモしてみる。Excel は無理でも、Google スプレッドシートには取り入れられるかもしれないと期待して。

* **スペースやセル内改行のような非表示文字の表示オン/オフ**をできるようにして欲しい(以下画像はすべてフェイク)。
![pict1.png](https://qiita-image-store.s3.amazonaws.com/0/20266/8b152cbd-21a4-6ee7-d2d3-808927cfc342.png)

英語圏で検索すると、マクロで置き換えたりとかみんな涙ぐましい努力を重ねている。ずっと前から Word でできていることが未だに Excel でできないのはもう笑うしかない。誰も気付いてないのだろうか。表示方法の追加だけなので、誰も困らないはずなのに。次の「差分ビジュアル表示」のためにも必要な機能。エディタに貼れば済むことではあるけれど。
* **2 つのセル同士の文字の差分をビジュアル表示**できるようにして欲しい。
![pic2.png](https://qiita-image-store.s3.amazonaws.com/0/20266/1b149bcd-57a5-d7d8-0879-84a6441327d8.png)

どの文字が追加され、どの文字が削除されているかをそれぞれ赤と青なんかで表示する機能。関数として追加でも表示メニューの新機能でもいい。両方あればもっといい。差分はその場でカード上に一時表示することも、差分の結果を別のセルに残すこともできて欲しい。並んでいる2行のセルや2列のセル、そして離れている2セルで差分を取れるようにしたい。なお、Gitのような「単語単位」、「行単位」の差分と、「文字単位」の差分を切り替えられるようにすること。これも、誰も困らない機能追加。
* **タブをウィンドウの下だけではなく、上下左右のどこにでも移動できる**ようにして欲しい。タブがウィンドウ下に固定で、多数のタブを小さな矢印でナビゲートするのをみんな不便だと思わないのだろうか。Windows のタスクバーや[OneNote](https://www.google.co.jp/search?q=onenote&newwindow=1&hl=ja&source=lnms&tbm=isch&sa=X&ei=EagfVf7hHsLDmQX2XQ&ved=0CAcQ_AUoAQ&biw=1146&bih=858)でできていることがExcelのタブでできないとは思えない。今どきの横に広い大画面では、タブが左にある方がずっとずっとありがたい。これも、誰も困らない機能追加。
* タブをウィンドウの左や右に表示できるようにするなら、**タブを通常のセルとまったく同じように表示するモード(擬似セル化タブ)**が欲しい。

言い換えると、タブをただの一番左(または右)の、ちょっとだけ特殊なセル列として表示する機能。その擬似セル化タブでは、フィルタやその他の通常機能も可能な限り同じように利用できて欲しい。

要するに、タブをウィンドウ左に縦に並べて、タブ名を検索したりフィルタをかけたりしたい。

Excel のタブには、ファイルにエクスポートするときに備えるためなのか、記号が使えないとか文字数が限られるなどのつまらない制限がいろいろある。それを撤廃すると困る人がいるかもしれないのでそこまで無理に変えなくてもいい。ただ、タブが200も300もある愉快なブックを受け取ったときに、目的のシートがどこにあるのか探して回る人の気持ちになって欲しい。

* **デフォルトでタブを1つにし、シートごとに明示的に解除しないとタブを追加できない**ようにして欲しい。タブが複数あって当たり前という悪習からユーザーをやんわりと遠ざけるべき。タブがある限り、データを正規化するためだけに無駄なコストを支払うはめになる。
* **セルの列数を制限する機能**が欲しい。できればデフォルトで列は10ぐらい(A4サイズに収まる感じ)まで、シートで明示的に解除しないと列数を増やせないようにするとなおよい。列をカジュアルに追加する人がいる限り、データの正規化は永遠に望めない。
* これはツイッターで見かけたのだけど、印刷時にセルの中身がはみ出して ##### になることがあるなら、印刷前に「**####が印刷されるけどいいんですか?**マスター」と聞いてくれる機能も付けてあげて欲しい。自分は Excel の印刷は馬鹿馬鹿しいのでやらないけど、世の多くの人が Excel を A4 の紙で印刷するためにセルのあっちをいじりこっちをいじりと夜遅くまで苦労しているようなので助けてあげて欲しい。
* 上の2つに関連して、**レイアウトをたとえば A4 1 枚に完全に限定したシートを作れる**ようにして欲しい。今の擬似的な印刷レイアウトではなく、どういじっても A4 からはみ出すことのないようなもの。実現されたらきっと、嬉しさのあまりその場にばったり倒れて死ぬ人と、なぜもっと早くこれを実現しなかったのかと理不尽に怒り狂う人が出る。
* **1列目をデフォルトでフィルタオン**にして欲しい。かつ1列目は文字と背景を白黒反転して見出しらしくして欲しい。こうすることで、ユーザーをこっそりデータ正規化の第一歩にいざなう。いらない人は自分で1行目を削除すればいい。
* **ある列にまったく同じ内容のセルが並んでいる場合に、「見かけ上」ひとつのセルとして表示するオプション**(セルのグループ化表示)が欲しい。現在の「セル結合」だと本当に結合してしまってデータの正規化を大きく損なうけど、見かけだけなので、セルにカーソルを置くと元の個別のセルに戻る。並べ替えなどに応じて、同じ内容のものが動的に見かけ上ひとつのセルとして表示される。
* 上のグループ化表示ができるようになったら、その**グループ化された複数行全体を折りたたんだり展開したりできる**ようにして欲しい。Mac の Finder のフォルダ表示のようなイメージ。`[+]`や`[-]`で操作する、あの微妙なグループ化機能とは別にしておいて欲しい。
* いいかげんに**セルの「内部」に画像を貼り付けられる**ようにして欲しい。画像と文字が混在する必要はない。画像か文字かの2択でいい。小さいセルに大きな画像を貼ってもすっぽり入り、マウスオーバーすれば全体を表示する、でいい。貼り付けた画像は、xlsx内部(つまりzip)のフォルダかxslx横の同名フォルダのどちらに保存するかぐらいは選べるようにして欲しい。2007でやっとリンク参照で貼り付けられるようになったものの、未だに実現されていない機能。他に方法がないばかりに、セルの上に不細工なオブジェクトとしてエビデンス画像を貼り付けてマクロで位置を涙ぐましく揃える人が後を絶たない。
* セル内でのカーソル移動がプアすぎる。「入力モード」と「編集モード」(`F2`または`Ctrl+U`で切り替え)の違いに意味がない。vim的な操作はむしろExcelのセルで使いたいぐらい。Excelセルをvim化するアドオンはあるみたいだけどMac用のはない。
* セルの内容を全選択するショートカットがない。どこかで見かけた方法で「ダミーのスペースを入力してセル内容をいったん消し、Undo(Ctrl+Z)とコピー(Ctrl+C)を行う」という方法で辛くも切り抜ける。プアすぎる。
* Mac版のExcelで、`⌘+C`や`⌘+X`を2回行わないとコピーやカットが行われないという妙な不具合を直して欲しい。マカーへの嫌がらせと認定。
* 小憎らしいデフォルトの「セル下揃え」設定を「上揃え」にしたいのに、設定に方法がない。マクロでやってあげる気にもなれない。
* Excelではないが、Mac 版 PowerPoint のショートカットや設定が Mac 版 Excel/Word とまるで一貫していない。もともとExcelとWordはMacで開発されたもので、PowerPointはWindows用に開発されたという違いがあるのは知っているけど、だから勘弁して欲しいということなのだろうか？

最近の Excel の機能で唯一よかったのは、条件付きフォーマットぐらいか。特に「重複セルの表示」は強力。後は昔ながらのvlookupぐらい。

Excl VBAマクロはいくら一生懸命作ってもバージョンがひとつ上がると全部台無しになるので力を使うだけ無駄。ひどいときには参照しているDLLごと利用不能になったりする。自分ひとりで使うマクロならともかく、他人にも使ってもらうマクロは本当に作りがいがない。

Excel は触れば触るほどカルマが増大し、将来に災いを残す。

某調査によると、Excelを扱っている時間に比例して不幸せ感が増加する傾向があるという。