Cuturnの適当日記

徒然なるままに適当に駄文を吐き出しております

エクセルを使う機会が多い私が感じたこと

会社にてエクセルを使う機会が多い私が感じたことを下記に書いときます。駄文。

方眼紙メソッドは決して悪くはない

よく駄目なエクセルの使い方の例に方眼紙メソッドが上がります。Word使え!っていう。しかし今までWordもちょろっと使ってみたものの、今いちな感じです。何が今いちかは以下の通り。

  • スタイルの影響範囲が計り知れない
  • 図の位置合わせが怪しい部分もあり
  • 多分スタイルを守るために小手先でやっちゃいけないことが沢山ある

上記欠点は、勿論きちんとスタイルまで含めて面倒見られる人がいて、その人だけがテンプレート書式を作っていればカバーできます。社内書式を作る人全員が上記を意識していれば問題ないでしょう。でもそんなまともな会社がほいほいあるものでしょうか・・・。

エクセルなら頭がどんなに悪くても、見た目通りに方眼紙を埋めれば作れます。誰でも書式作れますし、多くの技能を必要としません。誰でも使える、という方法はそれだけで価値があるのが、会社なんですね。

Excelで目次や自動採番のセクションが作れたら最高なんじゃないでしょうか…。とか思って、マクロ組めばいいじゃんとか言うんですがマクロ入れるとExcelって急に何かが複雑化して、セルとかずれると厄介なことになるんですよねー・・・。

古いエクセルを改変改変していくと「名前」が溜まっていく

最近自分が修正している設計書の「名前」を確認したら、100個ぐらいの意味のわからない、リンクも切れている名前が続出しました。このせいで意味もわからずシートコピー時に謎の名前が重複エラーなど出ていたので、新しく設計書などを作った際には名前が溜まって意味不明なExcelファイルにならないようにしよう。

シートの印刷範囲はPrint_TitlesとPrint_Areaという名前が使われていて削除するとがっかりするので、それ以外の名前を削除するVBAマクロが以下の通り。

Sub 印刷範囲以外の名前の削除()

    ' Dimension variables.
    Dim xName As Name

    ' Loop once for each name in the workbook.
    For Each xName In ActiveWorkbook.Names
        If InStr(xName.Name, "Print_Area") = 0 And InStr(xName.Name, "Print_Titles") = 0 Then
            xName.Delete
        End If
        ' Loop to the next name.
    Next xName
End Sub

報告書などにしたって「表」が無い書類はそうそうない

Excel使う必要ないじゃんっていう報告書なども、ちゃんと内容を書こうと思うと表や計算式が出てくると思います。そういうときWordだと困ります。でもExcelならいくらでもどうにかなるんですよねー。Excelからわざわざ切り貼りしてスタイル修正して…とかやるくらいならExcelから直接画像化するとか拡張メタファイル貼り付けするとかします…ってやるくらいなら最初からExcelの方が管理性がいいです。

セル結合は適材適所

個人的に、セル結合を使っていい条件があると思ってます。以下の条件のどれかとか収まれば使っていいと思います。

使っていいもの

  1. 空欄にデータを入れるだけの決まりきった書式。むしろ結合してください書式合わせづらいです。
  2. データを折り返して1行にまとめたいもの。単に文字列を入れるだけなら別にちゃんとはみ出てくれますが、折り返しが必要になると結合が必要になるので仕方なく結合します。

駄目なの

  1. 何かの管理表。新規行挿入などで絶対結合してないセルとそうでないセルが現れてきます。そうなってくると計算式なども動いたり動かなかったりになるので駄目。
  2. 設計書系。少なくとも今後メンテナンスが増えそうな表なら可能な限り結合は控えた方が無難です。ただし行単位コピー/挿入でいいなら問題ないです。

Wordディス

機能的にはWordはきっと素晴らしいと思います。でも、できたファイルの保守性はどうなんでしょうか。昔CMSWYSIWYGなインタフェース使ってブログ記事書いたりを検討してたんですが、あの時もスタイルが非常にごっちゃごちゃになって挫折しました。Wordもそうです。目に見えづらいスタイルが我々を不意打ち気味に縛ってきます。

Wordファイルのスタイルを整えることのむずかしさや直感的でなさを感じてしまうと、wikiTexで自分の認識する範囲のスタイルだけきちんと適用させようという方向に走り出すと思います。