Excel&GoogleSheets: セル内の日本語と数字を分ける(修正中です)

Last Updated on

セル内の日本語と数字を分ける方法:ExcelとGoogle Sheetの場合

 

社会福祉学の授業で、PDF文書の表をエクセルに貼り付けて並べ替えようと思ったら、うまく張り付きません。

事前に自宅のWindowsでやったときはできたのですが、なぜか大学では次のようになります。

 

再現のためのデータは下記です。

 

オーストリア50.7
ベルギー52.4
チェコ53.9
デンマーク54.1
フィンランド49.4

 

カタカナと数字を別のセルにわけたいのですが、どうしましょうか?

授業で私はギブアップしてしまったのですが、後ほどネットで調べてみるといろいろな方法を見つけました。

一番簡単で納得できるやりかたが下記(Helping Tool)にありましたので紹介します。

http://n-hirahira18.at.webry.info/200801/article_7.html

ポイントは、カタカナの文字数と数字の文字数を数えて、LEFT関数にカタカナの文字数をいれてカタカナを抜き出す、RIGHT関数に数字の文字数をいれて数字を抜き出すことです。

 

A.Excelの場合は簡単

 

B1に次のように書きます

=LEFT(A1,LENB(A1)-LEN(A1))

LEFT(セル番号、文字数)は、指定されたセルの、左から文字数の文字を抜き出す関数です。

LEN(セル番号)は、指定されたセルの1バイトの文字(半角数字やアルファベット)の文字数を数える関数です。

LENB(セル番号)は、セルのすべての文字(1バイト文字や2バイト文字(全角カタカナ、ひらがな、漢字)の文字数を数える関数です。

上の二つの関数を利用して(総文字数ー数字の文字数)で、カタカナの文字数を算出し、それをLEFT関数の引数(読みは「ひきすう」、英語はargument)として、カタカナ部分を抜き出します。

 

C1に次のように書きます。

=RIGHT(A1,LENB(A1)-LENB(B1))

A1セルの総文字数から上で抜き出したカタカナの文字数を引いて、それをRIGHT関数のアーギュメントとして、数字部分を抜き出します。

他の行にもコピーすると次のようにカタカナと数字を分けることができました。

 

B.Google Sheetの場合はLENB関数を作成

 

Google Sheetsには、LENB関数がないので作成する必要があります。

1.Google Sheetsにおける関数の作成方法(JavaScriptで書きます)

https://developers.google.com/apps-script/guides/sheets/functions#using_a_custom_function

2.hayamamoto氏のLENB関数のスクリプト

https://gist.github.com/hyamamoto/e0ea24f76fa23772e651

2のリンクのページのスクリプトをGoogle SheetsのToolsのScript Editorに貼り付けます。詳しくは1を参照してください。

あとは、Aと同じです。下のようになります。

 

ところで、3年生ゼミはMac教室ですが、Safariのバージョンが古いためNumbersしか利用できません。Numbersでどのようにセル内の日本語と数字を分けるかは、まだ、確認していません。

About shibatau

I was born and grown up in Kyoto. I studied western philosophy at the University and specialized in analytic philosophy, especially Ludwig Wittgenstein at the postgraduate school. I'm interested in new technology, especially machine learning and have been learning R language for two years and began to learn Python last summer. Listening toParamore, Sia, Amazarashi and MIyuki Nakajima. Favorite movies I've recently seen: "FREEHELD". Favorite actors and actresses: Anthony Hopkins, Denzel Washington, Ellen Page, Meryl Streep, Mia Wasikowska and Robert DeNiro. Favorite books: Fyodor Mikhailovich Dostoyevsky, "The Karamazov Brothers", Shinran, "Lamentations of Divergences". Favorite phrase: Salvation by Faith. Twitter: @shibatau

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.