
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
クエリに用いる場合に、以下のユーザー定義関数をお使いなればできるかと思います。
なお、半濁音、濁音付き文字は、1つの文字になります。そのまま、全角にしても、半角の「パソコン」は、全角の「パソコン」にはなりません。
ANSI文字だけを、半角のままにします。一応、パターンの中で、サポートしているはずです。
Function Han2Zen(arg1 As String)
Dim myPattern As String
Dim strValue As String
Dim i As Long
strValue = StrConv(arg1, vbWide)
Dim Sign As String
Sign = Chr(&H1F) & "-" & Chr(&H2F) & _
Chr(&H3A) & "-" & Chr(&H40) & _
Chr(&H5B) & "-" & Chr(&H60) & _
Chr(&H7B) & "-" & Chr(&HA5)
Const Figure As String = "0-9"
Const Alphabet As String = "A-z"
myPattern = "[" & Alphabet & Figure & Sign & "]"
For i = 1 To Len(strValue)
If Mid(strValue, i, 1) Like StrConv(myPattern, vbWide) Then
Mid(strValue, i, 1) = StrConv(Mid(strValue, i, 1), vbNarrow)
End If
Next i
Han2Zen = strValue
End Function
No.1
- 回答日時:
> 英数字及びハイフンは半角にカタカナは全角に変換したい
ハイフン以外の記号について触れていないのですが、一応想定として、
カタカナだけを全角に、他を全て半角に変換するものとして、
次のようなユーザ定義関数は、如何でしょうか。
書式:
ChgKanaWide(文字列式)
使用例:
ChgKanaWide("Ab漢12-アイ") ※実際の「アイ」は半角
戻り値: Ab漢12-アイ
Function ChgKanaWide(S As String) As String
Dim N As Integer
Dim St As String
Dim Wd As String
St = StrConv(S, vbWide)
For N = 1 To Len(St)
If Asc(Mid(StrConv(St, vbNarrow), N, 1)) >= 32 And _
Asc(Mid(StrConv(St, vbNarrow), N, 1)) <= 126 Then
Wd = Wd & Mid(StrConv(St, vbNarrow), N, 1)
Else
Wd = Wd & Mid(St, N, 1)
End If
Next N
ChgKanaWide = Wd
End Function
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルシート中の全角英数字を半角に変換したい 4 2022/07/07 13:14
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- マウス・キーボード 何故、ローマ字や英語を全角で打つ? 5 2022/05/15 09:36
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) エクセルでのデータの統一に関して リストを作成する際、元データをコピペでリストに転記しており、元デー 2 2022/08/31 15:33
- デスクトップパソコン 40年間の悩み キーボードにおいて初期値として漢字ローマ字変換に設定する方法 8 2023/05/08 14:50
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Excel(エクセル) EXCELでの文字・数字入力の基本について教えてください。 2 2023/05/29 23:17
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
半角の『°(単位の度)』
-
℃の半角表示
-
半角の×(かける)は?
-
エクセル関数で文字列の中のス...
-
問2 次の文中の空欄にあてはま...
-
半角スペース
-
EXCELで、セル内の半角カ...
-
MP3音楽ファイルのタグ編集につ...
-
Office2000 CDキーが...
-
契約書や 公文書・私文書などに...
-
お名前(姓)」には「カタカナ(...
-
Excel/Wordなどで、...
-
エクセルでセルの連結の逆
-
半角英数で♭の入力
-
フランスからの個人輸入で困っ...
-
メールアドレスの上ハイフン入...
-
文書での全角・半角の使い分け...
-
PDF形式の文字の全角、半角を判...
-
エクセルで、JIS関数、ASC関数...
-
半角スペースの入力
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
契約書や 公文書・私文書などに...
-
EXCELの文字列操作で文字数不足...
-
半角スペース
-
℃の半角表示
-
テプラは半角数字が使えますか?
-
半角の×(かける)は?
-
エクセル関数で文字列の中のス...
-
半角の『°(単位の度)』
-
EXCELで、セル内の半角カ...
-
Excel 文字列の中から数字だけ...
-
メールアドレスの上ハイフン入...
-
EXCEL95 VLOOKUP関数で半角と全角
-
Excel2016 検索の窓を常時表示...
-
エクセルで、JIS関数、ASC関数...
-
お名前(姓)」には「カタカナ(...
-
エクセルで 全角の空白を含む...
-
【VBA】ファイルパスに半角スペ...
-
エクセルでひらがな・漢字はそ...
-
ヘッダー(フッター)の全角・...
-
ビジネスの文書における、数字...
おすすめ情報