No.858407からの再質問です。
Excel2000を使っています。
D列に「NB/RD」といった色名略称が入っています。F列に、これを「ネイビー/レッド(半角カタカナ)」というふうに表示させたいと思っています。基本となる色名は約200あり、これはIMEの辞書に登録済みです。
下記のようなマクロを作ってみました。
Sub 色名ふりがな()
Dim rngTarget As Range
For Each rngTarget In Selection
rngTarget.Offset(0, 2).Value = Application. _
GetPhonetic(rngTarget)
Next
End Sub
ただし、この方法だとF列には全角カタカナで表示されます。これを同じプログラム上で半角カタカナにするには、どう書けばいいのでしょうか?
どなたかご存知の方、教えてください(>_<)
ちなみにVBAは勉強を始めたばかりの初心者です。
No.4
- 回答日時:
#2の補足で
>全角カタカナまではこぎつけたので
とあります。
であれば#1で使っている、
rngTarget.Offset(0, 2) = StrConv(rngTarget.Offset(0, 2), vbNarrow)
のように、StrConvとvbNarrowを使えばどうでしょう。
VBが入ってないと(StrConvや)vbNarrowは使えないでしょうか。
私の場合は旨く行きましたがVBが入っているお陰かも知れないが。
imogasiさま、再度ありがとうございました。
教えていただいた方法で、うまく表示させることができました。本当に助かりました!
No.2
- 回答日時:
こんにちは、前スレで答えてたものです。
GetPhoneticメソッドとStrConv関数を
組み合わせればよいかと。
ヘルプで確認してみてください。
この回答への補足
GuruGuru22さま、再度のご回答ほんとにありがとうございます。
実は今代用品のパソコンを使ってるのですが、これにヘルプファイルがインストールされてないんです。StrConvを使うところまでは思いついて、ネットで調べたのですが、どうもうまくいきません。そこで再度どなたかにご教示願えたら…と思って投稿してみました。
前回の質問で最終補足したとおり、全角カタカナまではこぎつけたので、現在はそれを24行の列に表示させ、本来表示させるべきF列にascで持ってくる、というかっこわるい方法で無理やり表示させてます(悲)。
No.1
- 回答日時:
Sub 色名ふりがな2()
Dim rngTarget As Range
For Each rngTarget In Selection
rngTarget.Phonetic.CharacterType = xlKatakana
rngTarget.Offset(0, 2) = rngTarget.Phonetic.Text
rngTarget.Offset(0, 2) = StrConv(rngTarget.Offset(0, 2), vbNarrow)
Next
End Sub
(OKWEBで全角カナに強制変換されますが、現実は
半角カナで出ます)
青アオ
黄色キイロ
赤アカ
緑ミドリ
参考 StrConv関数を効かせる前段階は
Sub 色名ふりがな()
Dim rngTarget As Range
For Each rngTarget In Selection
rngTarget.Phonetic.CharacterType = xlKatakana
rngTarget.Offset(0, 2) = rngTarget.Phonetic.Text
Next
End Sub
で
青アオ
黄色キイロ
赤アカ
緑ミドリ
この回答への補足
早速のご回答ありがとうございました。
お教えいただいた方法だと、色名が漢字やひらがなのときはいいのですが、アルファベットだと半角アルファベットで表示されてしまいませんでしょうか?
#色名略称がすべて全角アルファベットで入力されているんです。悲しいことに…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルシート中の全角英数字を半角に変換したい 4 2022/07/07 13:14
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Visual Basic(VBA) Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日 1 2023/02/10 07:50
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 6 2022/06/08 12:55
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
長音「ー」とマイナス「-」の...
-
エクセルシート中の全角英数字...
-
ハイフン(-)が長音(ー)
-
更新クエリで半角カタカナのみ...
-
Excelで文字の長さを揃えるには
-
UTF-8 と SHIFT-JIS について
-
ExcelVBAを使って、値...
-
count(*)で取得した値をJAVAの...
-
データ数をカウントしたいのですが
-
i=cells(Rows.Count, 1)とi=cel...
-
VB.NETで DataRow()を利用して...
-
VBAでActiveDirectoryのユーザ...
-
Excelで指定した日付から過去の...
-
【Excel VBA】指定行以降をクリ...
-
特定のセルが空白だったら、そ...
-
テキストボックスのvalueとtext...
-
Excel vbaで特定の文字以外が入...
-
VBAでセルをクリックする回...
-
DataGrdViewに関連付けたデータ...
-
文字列の後ろから必要分だけ削...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
長音「ー」とマイナス「-」の...
-
エクセルシート中の全角英数字...
-
更新クエリで半角カタカナのみ...
-
ハイフン(-)が長音(ー)
-
UTF-8 と SHIFT-JIS について
-
「ー」←これは伸ばし棒ですか?...
-
Excelで文字の長さを揃えるには
-
エクセル2016 条件付き書式で全...
-
アクセス2000:クエリの関数で...
-
特定の列の値を、ひらがな・漢...
-
アクセスのLENBとエクセルのLEN...
-
fairuse wizard
-
[VBA]半角カタカナ
-
ExcelVBAを使って、値...
-
VBAでActiveDirectoryのユーザ...
-
特定のセルが空白だったら、そ...
-
【Excel VBA】指定行以降をクリ...
-
VB.NETで DataRow()を利用して...
-
i=cells(Rows.Count, 1)とi=cel...
-
【Excel】指定したセルの名前で...
おすすめ情報