いきなり答える備忘録

G Suite・Microsoft 365・LibreOfficeなどに関するメモと日々の実験

(Excel)拗音・促音を大きい文字にする

 Excelで、文字列中の「ャュョ」や「ッ」といった小さいカナをまとめて大きくする、つまり大きいカナに変換する方法についてです。変換対象とする文字種が少ない場合はSUBSTITUTE関数を重ねればよいのですが、ここでは別のアプローチを試してみます。
 ひらがなにも応用できますし、さらに言えば任意の文字変換を一括して行うことができます。

  • 各種関数の組み合わせにより、小さいカナを一括して大きいカナに変換することができます。

手順

 画像では、B3セルに入力されている文字列中の小さいカナをすべて大きなカナに変換しています。

f:id:accs2014:20200513024714p:plain:w780

 C3セルに記された関数の内容は次の通りです。

=CONCAT(MID("アイウエオカケツヤユヨワ"&B3,FIND(MID(B3,SEQUENCE(LEN(B3)),1),"ァィゥェォヵヶッャュョヮ"&B3),1))

 ちょっとややこしいですが、対象文字列を1文字ずつ分解して「ァィゥェォヵヶッャュョヮ+対象文字列」という構成の文字列の中でその文字が最初に見つかる位置をぞれぞれ取得します。一方で「アイウエオカケツヤユヨワ+対象文字列」という構成の文字列から同じ位置にある文字を取得し、最後に連結しています。結果的に小さいカナは大きいカナに変換され、他の文字はそのままになります。ダブルクォーテーションで囲まれた2つの文字列は変換リストとなっており、双方の文字数と順番を揃える必要があります。
 なお、「ヵ」なんかは本題の拗音促音ではありませんが、せっかくですのですべての小さいカナを変換対象にしています。
 また、この方法によりカナに限らず任意の複数種の文字を一括して変換することが可能です。