[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ローマ字から 母音のみ・子音のみを抜き出す』(さよ)
先日は「ローマ字を数字に変換」でお世話になり、ありがとうございました。 おかげさまでずい分と、データ処理がシンプルになりました。 またお世話になります。よろしくお願いします。
WindowsXP Excel2003 です
ローマ字で書かれた名前から、母音のみ、子音のみを抜き出す事は可能でしょうか。
@ A1 にローマ字で名前を記入
A A2 に母音のみ抜き出し記入
B A3 に子音のみ抜き出し記入
わがまま言って申し訳ありません。 どうかよろしくお願いします。
具体的な、例をあげてみて下さい。
(NF)
こんにちは。 ちょっとデータレイアウトが違いますが、 A列に元のローマ字文字列があって、B列に母音を、C列にそれ以外を 抽出するサンプルです(正規表現で)
A列 B列 C列 kanabun aau knbn sayo ao sy AIUEO AIUEO KAKIKUKEKO AIUEO KKKKK Hello eo Hll
’標準モジュール Sub Try1() Dim c As Range
With CreateObject("VBScript.RegExp") .Pattern = "[^aiueo]" .Global = True .IgnoreCase = True For Each c In [A1:A5] c(1, 2).Value = .Replace(c.Value, "") Next
.Pattern = "[aiueo]" For Each c In [A1:A5] c(1, 3).Value = .Replace(c.Value, "") Next End With End Sub
(kanabun) 2009-11-28 22:15
返信が遅くなりまして申し訳ありません。
NFさま 具体的な例は、私がもたもたしている間にkanabunさまが分かりやすくまとめてくださいました。 もし宜しければ、再びお願いいたします。
kanabunさま
作っていただきましたサンプルを標準モジュールに貼り付けましたが、 それをどのセルに入れれば良いのかが分かりません。
A1 B1 C1 D1 それぞれに、=Try1()を挿入してみましたが、 どこに入れても『その名前は正しくありません』と出てしまうのです。 本当に初歩的なことが分かっていなくてお恥ずかしい限りですが、 宜しければ再度ご教授お願いします。
(さよ)
こんばんは。 標準モジュールにおいた Sub Try1() は 関数でなくマクロですので、 ワークシートのA列に 上の例のように適当な ローマ字を入力した後、 メニュ−[ツール]-[マクロ]-[マクロの実行...] より Try1 を実行して 検証してください。 (kanabun)
関数にするなら、 標準モジュールに こんなのをおいて
Function Mother(ByVal r As Range) As String With CreateObject("VBScript.RegExp") .Pattern = "[^aiueo]" .Global = True .IgnoreCase = True Mother = .Replace(r.Value, "") End With End Function
Function Child(ByVal r As Range) As String With CreateObject("VBScript.RegExp") .Pattern = "[aiueo]" .Global = True .IgnoreCase = True Child = .Replace(r.Value, "") End With End Function
たとえば、 [A1]セルに kanabun [A2]セルに =Mother(A1) と数式を入れると、 セルは「aau」となりますし、 [A3]セルに =Child(A1) と打ち込むと、「knbn」と表示されます。
(kanabun)
マクロの方、ご指示通りに実行しましたら出来ました! まさに、思い描いていたような結果が得られ、感動です! 早速、実行ボタンを設置し、使わせていただいております。
ここ数日、他力本願ばかりではいけないと、 文字列操作のSUBSTITUTEなどを試してみたりしたのですが、 全く的外れだった事が良く分かりました。 やはり、初心者にはハードルが高すぎなのですね。
最初に作って頂きましたマクロだけでも十分過ぎるほどですが、 関数までご指導いただきまして、どんなに感謝しても足りません。 ご指導いただきましたことを、ちゃんと理解できるように、これから頑張って勉強します。 本当にありがとうございました。
(さよ)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.