[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『全角ひらがなを半角カタカナにするには』(くじら)
全角ひらがなを、半角カタカナにするにはどうしたら良いでしょう?
全角⇔半角はASC、JISを使うと思いますが、
ひらがなからカタカナの場合はどうすればできるか、教えてください★
例・ あいうえお→アイウエオ
全角カタカナ⇔半角カタカナ変換のASC関数、JIS関数はありますが
全角ひらがなを半角カタカナにするには無理があるようです。
ひらがなの「あいうえお」のCODE配列は「あぃいぅうぇえぉお」
全角カタカナ「アイウエオ」のCODE配列は「アィイゥウェエォオ」
半角カタカナ「アイウエオ」のCODE配列は「アイウエオカキクケ」です。
関数で無理やりA1の「あいうえお」→「アイウエオ」にするには
=CHAR(CODE(LEFT(A1,1))+256)&CHAR(CODE(MID(A1,2,1))+256)&CHAR(CODE(MID(A1,3,1))+256)&CHAR(CODE(MID(A1,4,1))+256)&CHAR(CODE(MID(A1,5,1))+256)
「あいうえお」→「半角アイウエオ」にするつもりで
=CHAR(CODE(LEFT(A1,1))-9073)&CHAR(CODE(MID(A1,2,1))-9073)&CHAR(CODE(MID(A1,3,1))-9073)&CHAR(CODE(MID(A1,4,1))-9073)&CHAR(CODE(MID(A1,5,1))-9073)
とすると結果は「アウオキケ」になります。
ひらがな⇔全角カタカナは互換性があるためユーザー関数を作ることが可能だと思います。
手動操作でよければ
@ひらがなを全角カタカナ、半角カタカナに変換するには
・セルをダブルっクリックし編集状態にします。
・HOMEキーでカーソルを先頭に移動します。
・ShiftとEndキーで文字列選択(反転)します。(文字列をなすってもよい)
・右クリックメニューの「再変換」で選択します。
A入力時であれば、ひらがな入力後[F7]で全角カタカナ、[F6]で半角カタカナ、
・[F9]で関数のLOWER関数→UPPER関数→PROPER関数の順に英数文字変換できます。
kazuさん説明の中に吃音の文字がありますが、これは半角仮名の反則にはならないでしょうか?
できれば、希望として、どなたかユーザー関数を紹介してあげて下さい。
(シニア)
↓はひらがなを全角カタカナに変換するやつです。
Function ASC2(adr As Range) As String
Dim buf As String
For n = 1 To Len(adr.Value)
Select Case Asc(Mid(adr.Value, n, 1))
Case -32421
buf = buf & Mid(adr.Value, n, 1)
Case Is >= -32034
buf = buf & Chr(Asc(Mid(adr.Value, n, 1)) + 162)
Case Else
buf = buf & Chr(Asc(Mid(adr.Value, n, 1)) + 161)
End Select
Next n
ASC2 = buf
End Function
A1に やったーまん と入れて
=asc(asc2(a1)) とかすれば、OKです。 多分(汗)。
(ramrun)
昔は半角カタカナが原因でサーバーが落ちたりしていたと聞いています。
Webページでは文字化けが発生する要因となります。
半角カタカナは基本的に困るのですが、このへんの話になると、
全角に直してしまうとわけがわからなくなるので、あきらめています。
きるだけ早くCGIで変換してしまう方法にしたいと思っています。
(kazu)
ramrumさん
早速ひらがなをカタカナに変換するユーザー関数の紹介有難う御座います。
更に、ASC関数で半角カタカナに変換する方法を案内されていますので、
くじらさんの要望が一挙に解決されて、喜ばれることと思います。
(シニア)
にて新規に質問をしなおしています。 (独覚)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.