Excelの記録

ちょっとExcelをつかう用事があったのだが、もっと効率的なやり方がありそうなので、記録をつけておいてのちにゆっくり考えようと思う。
※細かくは書かないのでほかの人には伝わらない可能性大



元データを差し込み印刷のために整えたい。

それにあたって必要な作業として、
①元データは変えたくないので別シートに差し込み印刷用のデータを作成する
②氏名が複数セルに入力されているため、それらを同じ氏名のもとに一つのセルにまとめる
③セル内で、数値や文字の右側に不要なスペースがやたらと入っているので、それを削除する
④たとえば元データでは「20240501」(半角)となっているものを、文書に差し込みしやすいよう「2024年5月」というようなかたちにし、さらに全角にする

唸りながら画面に向き合い続け、以下のように手順を踏みました。

①元データは変えたくないので別シートに差し込み印刷用のデータを作成する
→ここは毎度おなじみVLOOKUP先輩。冗談抜きで、ほぼ毎回お世話になっている。
慣れたもんだと気を抜いていたら数式の最後にFALSEを入れ忘れ、めちゃめちゃな数値が返ってきて焦り、喚き散らす私。
(Excelとしてはきちんとした規則と自信のもとに数値を返しているので甚だ迷惑であろう)

②氏名が複数セルに入力されているため、それらを同じ氏名のもとに一つのセルにまとめる
→これは初めて使ったUNIQUE関数。初めてなので、かの『UNIQLO』と見間違えた。赤い看板。
一つ目のセルに数式を入力しオートフィルすれば、元データでは膨れてあがっていたデータ数が、スッキリまとめられた。人力で抜き出してまとめるよりも確実に正確である。

③セル内で、数値や文字の右側に不要なスペースがやたらと入っているので、それを削除する
→TRIM関数、SUBSTITUTE関数。
前者は文字と文字の間のスペースは一つ残して前後のスペースを削除する。
これは以前教えてもらったことがあり知っていたのだが、文字と文字の間にすらスペースを入れたくないときもある。
この場合は後者。SUBSTITUTE関数は本来、特定の文字を置き換えるためのものらしいが、それを応用すればスペース(" ")を削除("")することができるとのこと。便利。

④たとえば元データでは「20240501」(半角)となっているものを、文書に差し込みしやすいよう「2024年5月」という形式にし、さらに全角にする
→私の技量では一発ではできなかった。
まず元データの半角を全角に変換する。
半角→全角(文字列):JIS関数
全角→半角(文字列):ASC関数
「JIS」の文字を見るのは、いつ受けたのかITパスポートぶりである。
ちなみにASC関数はアスキーと読むらしい。昔、友達から『デュラララ!!』を借りて読んでいたからか、思わず立ち止まってしまった。
なぜか背表紙の『電撃文庫』よりも記憶が強い。
また、調べていて便利だなあと思ったので、これも覚えておきたい。
小文字→大文字(英字):UPPER関数
大文字→小文字(英字):LOWER関数
半角データを全角にしたので、そこから任意の部分を抜き出したい。
年に当たる部分(左から4文字)を抜き出す:LEFT関数
月に当たる部分(5文字目と6文字目)を抜き出す:MID関数
MID関数で抜き出した結果「05月」となってしまったので、ここはIF関数で条件分けして不要な0を取り除いた。



私はExcel関連の資格も所持していなければ勉強したこともないので、何時間もネットの集合知に頼りっぱなしでした。

調べて…Excelの画面に戻って…検索画面に戻って…またExcelの画面に戻って…タスクバーにカーソルをあててチラチラとカンニング…

(画面分割するとExcelで数式を入力する時にうまくいかないので)


結果、今まで使ったことのない関数をいくつも収穫することができました。

実りの季節ですねえ。