
No.4ベストアンサー
- 回答日時:
これはユーザ関数でないとできないと思います。
以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さいシートでこのように式として使用します
=KtoH(A1) 半角カタカナ→(全角)ひらがな
=HtoK(A1) (全角)ひらがな→半角カタカナ
Function HtoK(ByVal trg As Range) As String
HtoK = StrConv(trg.Value, vbKatakana)
HtoK = StrConv(HtoK, vbNarrow)
End Function
Function KtoH(ByVal trg As Range) As String
KtoH = StrConv(trg.Value, vbWide)
KtoH = StrConv(KtoH, vbHiragana)
End Function
ユーザ関数は存在は知っていたのですが、まったく使ったことは無かったです。
この場合は、ユーザー定義関数がもっとも便利な気がします。
ありがとうございました。
No.6
- 回答日時:
前半は前の質問に答えてしまった。
そちらを見てください。後半は、VBEの標準モジュールに
Function wd(a)
wd = StrConv(StrConv(a, vbKatakana), vbWide)
End Function
で同じ例で
ハンナリハンナリ
ハンナリハンナリ
オカユガクイタイオカユガクイタイ
カンガエルトワカラナイカンガエルトワカラナイ
ご丁寧にすみません。
私が質問した時点では、まだimogasi様の回答を見ていない段階でしたので、二重の質問をしてしまいました。
大変参考になりました。
ありがとうこざいました。
No.5
- 回答日時:
こんばんは。
回答ではないのですが、数字やアルファベットと混じったものの中から、それだけを取り出して「ひらがな全角~カナ半角 」相互置換だとしたら、もっと難しいマクロか、ユーザー定義関数になるはずですね。
それは、どうなんでしょうか?
私が知らない方法で、もっと簡単な方法があるのではと思いましたが、マクロか、ユーザー定義関数が必要なのですね。
一般的には使わない機能だからでしょうね。
ご親切にありがとうございました。
No.3
- 回答日時:
A1に文字が入っており、B1に変換結果を表示するとすると、
=PHONETIC(A1)
とB1に入力し、A1セルを選択して「書式」>「ふりがな」>「設定」を選択し、「ひらがな」を選択するとB1の文字が全角ひらがなに、「半角カタカナ」を選択すると半角カタカナになります。
ただし、PHONETIC()関数はもともとふりがなを取得する関数なので、文字列に漢字が含まれていると、かなに変換されてしまいます。その場合はこの方法は使えないので、マクロを使います。
マクロで変換する方法ですが、Alt+F11でVBAの画面を開き、「挿入」>「標準モジュール」を選択して、右の画面に以下のマクロをコピーして貼り付けてください。
Sub 全角ひらがなに変換()
Dim r As Range
For Each r In Selection
r.Value = StrConv(r.Value, vbWide + vbHiragana)
Next
End Sub
Sub 半角カタカナに変換()
Dim r As Range
For Each r In Selection
r.Value = StrConv(r.Value, vbNarrow + vbKatakana)
Next
End Sub
VBAの画面を閉じ、Alt+F8からマクロを実行すると、選択されたセルの文字列がカタカナ半角/ひらがな全角へそれぞれ変換されます。
すごい。完璧ですね。
私も、昨晩、布団の中で、「=PHONETIC関数を使えばいいかも!」と思いつき、すぐに「漢字 かな交じり だったら漢字もカナになっちゃうからダメだ」とゲンナリしてしまいました。
すばらしいVBAコードを教えていただいてありがとうございました。
No.1
- 回答日時:
はい。実は、その質問を見て、自分なりの疑問を改めて質問させていただきました。
ASC や JIS 関数は知っていたのですが、ひらがな全角文字からカタカナ半角文字への置換を簡単にできる方法は知らないなーと思い、質問しました。
http://oshiete1.goo.ne.jp/qa2788626.html
では、imogasi様がVBAもしくはユーザー関数を作るとお答えになっているので、分かりましたが、私が質問した時点では、その回答は寄せられていない段階でしたので、質問させていただきました。
もし、nobu555様が良い方法をご存知でしたら、ご教示ください。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) エクセルシート中の全角英数字を半角に変換したい 4 2022/07/07 13:14
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- マウス・キーボード 何故、ローマ字や英語を全角で打つ? 5 2022/05/15 09:36
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
- Mac OS Macの変換ですが、一発で半角英字に変換する方法は無いですか? 3 2022/04/10 22:19
- Excel(エクセル) Excel 365 フリーズ 頻発 エクセルのセルの中に日本語の文章を全角半角和文英文数字を混ぜて入 3 2022/12/12 15:09
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カタカナを小文字から大文字に...
-
エクセルでひらがな全角~カナ...
-
ハイパーリンクの中の半角カタ...
-
select case 大文字小文字を...
-
ATOK16で「かな入力」を完全に...
-
ATOKの入力がおかしくなること...
-
ATOK ローマ字入力モードに一発...
-
タスケテ
-
Photoshopでローマ字が打てなく...
-
文字を打つときに文字に下線が...
-
「トゥ」をローマ字で打ちたい...
-
漢字変換が異常に遅いPC
-
shifキーを押しながらの半角英...
-
ローマ字入力のキーボードで最...
-
「”」と対になる「チョンチョン...
-
小さい「ウ」ってキーボードで...
-
ウィンドウズパソコンを立ち上...
-
X₁=3、X₂=4 の 小さい数字の...
-
=を縦にした キーボードの入力...
-
どうでもいいような質問ですい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カタカナを小文字から大文字に...
-
ハイパーリンクの中の半角カタ...
-
EXCEL 「ASC」関数 ...
-
半角カタカナがVBAだと全角...
-
特打ヒーローズ名探偵コナン ...
-
文字を打つときに文字に下線が...
-
日本語入力On/Offを音などで知...
-
select case 大文字小文字を...
-
ATOKの入力がおかしくなること...
-
ァ→ア (アクセス)
-
[半角/全角 漢字]キーを押さず...
-
ATOKの入力について
-
ソースネクストアプリをインス...
-
言語ソフトについて教えてくだ...
-
ピボットテーブルでワイルドカード
-
半角英数字を大文字に変換する...
-
Xplane11で遊んでいますが頻繁...
-
ATOK2006で「うぉ」と入力した...
-
日本語入力について(ATOK、IME)
-
ATOK ローマ字入力モードに一発...
おすすめ情報