No.2ベストアンサー
- 回答日時:
こんにちは。
>文字列を一文字ずつ切り出して判定すればできるような気がしますが、物凄い時間がかかりそうです。
実際には、その方法でも、考えるほどにはないと思います。
今回は、あえて、正規表現は使わない方式で、#1様とは、ちょっとだけ違う方法で考えてみました。なお、以下のコードは、濁点や半濁点は、全角変換した場合は、StrConvで組み込まれ1字になるのですが、ハンパが出てきた時は、基本的には文字としては、存在しえませんから、"NG"になります。また、半角の長音=マイナス(-)が、第一字目には出てこないことを前提にしています。
'//
Sub CheckKatakana()
Dim c As Variant
For Each c In Range("A1", Cells(Rows.Count, 1).End(xlUp))
If c.Value <> "" Then
If StrConv(c.Value, vbWide) Like "*[!ァ-ヶー][!-]*" Then
c.Interior.ColorIndex = 7 'ピンク
Else
c.Interior.ColorIndex = xlColorIndexNone '訂正後にやれば、色は消えます。
End If
End If
Next c
End Sub
'//
No.1
- 回答日時:
簡単に
' ' ///
Sub Re8530268()
Dim r As Range
For Each r In Range("A1:A4") ' ◆◆セル範囲を必要に合わせて指定。
If r.Value Like "*[!ヲ-゜ーァ-ヶ]*" Then ' ※パターン文字列の半角カナに注意!!
r.Interior.Color = vbRed ' ◆◆塗り潰し色を指定
End If
Next
End Sub
' ' ///
このサイトでは半角カナの投稿は反映されず一部の文字は文字化けしてしまいます。
Like 演算子に用いるパターン文字列ですが、そちらで正しい文字に書き換えてください。
*[!ヲ-゜ーァ-ヶ]*
4桁め、半角カナのヲ
6桁め、半角半濁点(半角でパを入力した時の2文字目)
(7桁め ー、8桁め ァ、10桁め ヶ、以上の3文字は全角で、他は皆半角です。)
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) Excel VBAでのセルやシェイプの色指定について。 たとえば、”red”という文字列を用いて … 4 2022/11/15 09:44
- Excel(エクセル) Excelに文字データのみを貼り付けたい 8 2023/05/03 15:38
- Excel(エクセル) Excelの文字列を数字に変換する方法について 6 2023/07/31 21:18
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
gas 全角数字を半角数字に変換
-
Vba SelStart、SelLen教えてく...
-
VB.NET2003 テキストボックスに...
-
ひらがな専用入力エリアのチェック
-
ハイフンだけ置換したい。
-
VBAによる第3、4水準文字の判定...
-
JavaScriptの正規表現の全角ス...
-
VC#でテキストボックスに変数の...
-
「終了していない文字列型の定...
-
正整数の半角数字かどうか判定する
-
Visual Basic 6.0 のテキストボ...
-
禁止文字チェック
-
javascript:void(0)とは何でし...
-
再帰呼び出しになってしまうの...
-
JSON形式でのページング処理に...
-
JavaScriptでテキス...
-
C#でボタン名を変更しても動く
-
クリックすると下に説明文が出...
-
フォルダを自動で開く
-
slideToggleの動きがおかしい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba SelStart、SelLen教えてく...
-
VB.NET2003 テキストボックスに...
-
gas 全角数字を半角数字に変換
-
「終了していない文字列型の定...
-
正整数の半角数字かどうか判定する
-
VBAによる第3、4水準文字の判定...
-
ハイフンだけ置換したい。
-
VC#でテキストボックスに変数の...
-
C#でTextBoxに数値のみ入力可能...
-
エクセル 半角英数6文字以上 ...
-
漢字などを正規表現でパターン...
-
JavaScriptに関する質問です。 ...
-
javascript 文字列の最後から1...
-
正規表現について
-
エクセルVBA/ Formatで文字列が...
-
禁止文字チェック
-
Javascript 全角カナ+半角スペ...
-
CListCtrl の特定のセル(アイ...
-
文字認証の問題
-
Access VBAで、数字だけをチェ...
おすすめ情報