• 締切済み

VBAなのですが、B列にカタカナが入っているとする場合、C列にローマ字を自動入力したい。

【質問】 Excel(VBA)で下のようにデータがある場合、C列のローマ字の場所とD列の英字の場所へ、B列のフリガナを参照して自動入力したいのですが、どのようにすればよいのでしょうか。 欲を言うと、ローマ字・英字の先頭の文字は大文字が良いです。 --------------------------------------------------  名前     フリガナ     ローマ字  英字 -------------------------------------------------- 相田 章  アイダ ショウ 飯田 香  イイダ カオリ 石狩 鍋  イシカリ ナベ 石川 梓  イシカワ アズサ 渡 哲也  ワタリ テツヤ -------------------------------------------------- VB初心者なのでよろしくおねがいします。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 今から、再度、書く気がしないのですが、ここのスレッドを丹念にお読みください。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1450971 OKWeb側だっら読み替えてください。 私のは、ユニークで、質問者さんのリクエストに従って、苦心して特殊ヘボン式で作りましたが、一般のものは、以下でよいと思います。 http://park11.wakwak.com/~miko/Excel_Note/15-03_celldata.htm#15-03-56 はっきり言って、ローマ字は、ヘボン式・訓令式・外務省式・旧国鉄式・日本のローマ字社式(ISO)や、各社で作っている慣例などがあって、ひじょうにすごく難しいです。おまけに、多くは、仕様書がない状態です。 >後は、英字の先頭の文字は大文字が良いです。 wakwak.com 側の場合は、 kana2roma = retStr   ↓ kana2roma = _ StrConv(Left$(retStr, 1), vbUpperCase) & Mid$(retStr, 2) とでもしてください。

VBviginner
質問者

補足

Wendy02さんどうもありがとうございます。 過去の履歴を検索してみたのですが引っかからず。。。 たしかに同じ事を聞いていますね。 しかーし。。 初心者の私には難しくて頭が爆発しそうです。 丹念に読んで分からなかったらまた、ここに補足で質問しますので、よろしくお願いします。

回答No.1

こんにちは。 スマートな方法かどうかは置いといて・・・(汗 こんなんでどうでしょうか? Sub main()  Dim a As String  Dim baff As String  Dim i As Integer  Dim strName  strName = ""  a = "アイダ ショウ"  For i = 1 To Len(a)   baff = Left(a, 1)   a = Right(a, Len(a) - 1)   strName = strName & ascii(baff)   If i = 1 Then     strName = UCase(strName)   End If  Next End Sub Function ascii(strBaff As String) As String   Select Case strBaff    Case "ア"     ascii = "a"    Case "イ"     ascii = "i"         ・         ・         ・    Case "ン"     ascii = "nn"    End Select End Function 動作保証はしてませんので(汗 名前はループを付け足してもらえれば良いかと思います。 もっと良い案がある方は是非。

関連するQ&A

  • ローマ字入力

    エクセル2007を使用しています。 文字を入力しようとすると、ひらがな入力になったり 英字入力になったりします。 ローマ字入力で固定したいのですが ローマ字入力にしても、しばらくすると すぐかなになったり、カタカナ入力になったりします。 できればローマ字入力固定にして、必要な時に かな等に変換したいのですが。 方法を教えてください・ お願いします。

  • 文字のリアルタイム検索がしたいんです…

    質問を見てくださってありがとうございます。 少し説明が長いのですがどうぞ見てやって下さい。 さっそく質問内容なのですが…。 私がしたいと思っているのは文字列のリアルタイム検索です。まず、それが具体的にどういうことなのかを説明します。 あるFORM1にテキストボックスと一覧表示系コントロール(私が使っているのはTDBGridというコントロールです…)を配置しています。その一覧系コントロールには名前とそのフリガナが表示されます。その状態でテキストボックスにフリガナを入力して沢山あるリストの中から該当する名前(フリガナ)を検索しカレント行にする。というものなのですが、この時"リアルタイム検索"というのがどういうことかといいますと…。 一覧系コントロールに以下のような内容が表示されているとします。 -------------------- 名前  フリガナ -------------------- 相田  アイダ 飯田  イイダ 石狩  イシカリ 石川  イシカワ 渡   ワタリ -------------------- この中の"イシカワ"を検索する時…、 「イ」を入力すると飯田さんの行がカレント行になり 続いて「シ」を入力すると石狩さんの行がカレント行る。 更に「カ」を入力して「ワ」を入力すると石川さんの行がカレント行になるというものです。 これは入力した文字を一文字づつ認識してやり、一覧から検索してきて一番初めにヒットしたものを探し出してくるのですが、ここで問題となるのが入力した文字を一文字づつ認識させるということだと思うんですね。 実際は、入力しても一度[Enter]キーを押すまで、変換待ちになってしまいますから…。 ホントにどうしたらいいんでしょう…。 ずっと考えているのですが分からなくて困っています、わからないけどこうしたらどうかな??なんて回答でもいただけたら嬉しいのでどうぞ宜しくお願いしますm(__)m

  • 入力の初期設定を英字ではなくローマ字入力にしたい

    教えていただきたいことがあります。 現在、WINDOWSを使っているのですが、 ワードやエクセルなどを立ち上げたときに 初期設定が英字設定になっているらしく、 文字を打ち込むと、英字で表示されます。 たとえば、ローマ字なら「わたし」のところ、 英字だと「watasi」となります。 まったく英字など打ち込む習慣などないので、 最初からローマ字で打ち込めるように 設定をしたいのですが・・・・。 ご存知の方、どうぞご教示ください。

  • ローマ字入力が英字入力に・・

    うまく説明できないので、状況を話ます。 検索バーに文字入力を行う際の問題です。 まず、例えば「愛」という言葉を入力する場合・・  私のキー操作方法は  (1)検索バーにカーソルをあわせ文字を入力できる状態にする  (2)キーボード左上にある「半角/全角」を押しローマ字入力にする  (3)「AI」とローマ字入力し変換キーで「愛」と変換する とこのように操作します。 が・・急いでいる時など、時々(2)の工程の「半角/全角」キーを 押していないため、「AI」がそのまま英字のままとなってしまい変換できないため、その「AI」をDeleteし再度(2)の工程からやり直すという操作をしています。 今回のような文字数が少ない場合は、ショックも少ないのですが、ブラインドタッチも出来ないため、たくさんの文字を入力した後で気がつくと非常にショックです。英字で入力してしまった際に、その英字を簡単に変換できる方法はないかアドバイスをお願いします。  

  • ローマ字入力が変なのです

    googleやYahooで検索します。またはWORDで入力します。 入力するのですが、カタカナや漢字だと 最初の文字が英字になります。 例えば、カタカナの「ブ」と打つと、「bう」となります。 やり直すと「ブ」と入力できます。  山と打つと、最初は「yあ」となります。2回目は「山」と でます。 でも、新しい画面からやり直すと、やっぱりだめです。 これって、なぜなのでしょうか?  入力方式はIMEでローマ字入力、 最下欄は「あ」となっています。 WinXP、office2002、IE6です。どなたかお教えください。googleやYahooで検索します。 キーワードを入力するのですが、カタカナや漢字だと 最初の文字が英字になります。 例えば、カタカナの「ブ」と打つと、「bう」となります。 やり直すと「ブ」と入力できます。  山と打つと、最初は「yあ」となります。2回目は「山」と でます。 でも、新しい画面からやり直すと、やっぱりだめです。 これって、なぜなのでしょうか?  入力方式はIMEでローマ字入力、 最下欄は「あ」となっています。 WinXP、officeXP、IE6です。どなたかお教えください。

  • ローマ字入力が変??

    ローマ字入力のとき、たまに変な風に変換されてしまいます。 たとえば、  「TOUKYOU」と入力すると「東京」と変換されますが、 まれに  「Tおうきょう」と、先頭の文字が勝手に英字で確定されていて、 知らずに(変換をするまで画面を見ていないので)変換すると  「T王経」となっています。 最近、Win-7に変えてから現象が頻発しています。 どうすれば直るのでしょうか?どなたかご教授願います。

  • ローマ字入力で、半角/全角で切り替えができません。

    ローマ字入力で、半角/全角で切り替できなくなりました。 キーボードの文字列がテンキーとして使われているようなのですが、 直したいのですが、 どうすればよろしいでしょうか。教えてください。

  • 英字入力ではなく、ローマ字日本語入力で始めたい

    WindowsXPとMicrosoft Office IME 2010を使用しています。 ブラインドタッチではないので、Webやソフトが切り替わるたびに ローマ字による日本語入力モードが英字入力モードに戻ってしまい、きづかずに キーボードの文字だけみて入力していると、いつのまにかアルファベット の行列になってしまい、困っています。 対処方法(最初からローマ字日本語入力モードになる)あるでしょうか。

  • ローマ字文字列の半角←→全角変換

    半角で入力してあるローマ字文字列(大小文字、記号を含む)を全角に簡単に変換する方法を教えて下さい。もちろん、大文字は大文字で。大文字・小文字を「全て置換」で50数回やればと思いましたが、もっと簡単な方法があるのではと思いましたので。88歳。

  • ローマ字入力時の半角文字

    ローマ字入力をする際は、子音と母音の組み合わせで入力します。 例えば「が」を入力するときは「G」「A」というキーを続けて入力すると「が」になります。 この時最初に「G」のキーを打つと「g」の文字が全角で表示されるとともにその文字の下には線が表示され、続いて「a」のキーを押すと「が」となります。 以前は「G」のキーを押すと「g_」と「g」の字が半角で表示され、その隣には「_」(アンダーバー)が表示されていました。その後「A」のキーを押すと、「が」と入力されました。 このモードにすることで、日本語入力中も最初の1文字だけは半角で英字を入れたいのですが、どうしてもできません。 ちなみにOSはW10、MicrosoftIMEです。 分かる方いらっしゃれば教えてください。