
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
たぶんこれで大丈夫だと思いますので、試してみてください。
Visual Vasic Editorを起動して標準モジュールに貼り付ければ、ユーザー定義関数として使えます。
Function Katakana(文字列 As Range) As String
Dim myStr As String, n As Long, _
myLen As Long, myRange As Range
For Each myRange In 文字列
myStr = myRange.Value
If myStr <> "" Then
myLen = Len(myStr)
Do
n = n + 1
Select Case Asc(Mid(myStr, n, 1))
Case 166 To 223, -31936 To -31850
Katakana = "Error"
Exit Function
End Select
Loop Until n = myLen
n = 0
End If
Next myRange
Katakana = ""
End Function
この回答へのお礼
お礼日時:2003/05/12 09:52
回答ありがとうございます。
実はStrConvでユーザー定義関数を作成してはみたんですが、ユーザー側がVBがわからない為、関数で出来ないかと思い今回質問してみました。
関数では限界がありますね。どうもありがとうございました。
No.3
- 回答日時:
すいません途中でした。
=IF(MIN((FIND({"ア","カ","サ","タ","ナ"},JIS(A1)&"アカサタナ",1)))>LEN(JIS(A1)),FALSE(),TRUE())
長いので省略しましたが、ア~ンまですべてのカタカナを設定する必要があります。
FIND関数でカタカナの位置を見つけ、MIN関数で一番手前の位置を見つけます。その位置が元のA1の文字内であればカタカナが含まれていることになります。
JIS関数で全角にそろえられます。
No.2
- 回答日時:
=IF(MIN((FIND({"ア","カ","サ","タ","ナ"},JIS(A1)&"アカサタナ",1)))>LEN(JIS(A1)),FALSE(),TRUE())
長いので省略しましたが、ア~ンまで設定してやるとすべての
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
おすすめ情報