[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『オートフィルターの検索』(ミスター)
Excel2003でオートフィルターのオプションで『コールバック』と言う文字を含み検索すると検索できないことがあります。 何か特別な条件はあるのでしょうか。 入力は全角ですが・・・
こんにちは。 >何か特別な条件はあるのでしょうか ないと思いますよ。 単純に文字が不一致になっているのではないでしょうか。
[R/C] [A] [B] [1] 項目 フィルタ結果 [2] コールバック ○ [3] コ−ルバック × [4] コールバツク × [5] コールパック × [6] コールバック ○ (コタ)
しかし・・・
コールバック ○
コールバック ×
原文そのままペーストしてます。
ー,−,ツ,パ,バなど何回もみなおしているのですがね・・・・
文章中の文字を引っ掛けているので、文字列など何かあるのでしょうか。
コールバック を含む で実行したら引っかかるのでしょうか?(ROUGE)
コールバックを 含む/含まない 両方とも引っかかりません。
「コールバック」という文字が見えるのに、オートフィルタで非表示になってしまうのですか。 試しにどれか1つのセルの中身を、こちらに貼り付けてみてはいかがでしょうか。 (もちろん公にできない部分は伏字にして) (コタ)
その文字は手入力したものですか? それともHPなどからコピペしたものですか? (momo)
こんなコードで文字をチェックしてみるとどうでしょうか?
Sub 不要文字検索()
Const FindStr As String = "コールバック"
Dim r As Range, m As Object
Dim i As Long, j As Long, Ans As Long
Dim myPt As String, buf As String, myCode As String
For i = 1 To Len(FindStr)
myPt = myPt & "[^" & FindStr & "]*" & Mid$(FindStr, i, 1)
Next i
With CreateObject("VBScript.RegExp")
.Pattern = Mid$(myPt, Len(FindStr) + 5)
.Global = True
For Each r In ActiveSheet.UsedRange
If .Test(r.Value) Then
myCode = ""
For Each m In .Execute(r.Value)
buf = m.Value
j = 0
For i = 1 To Len(buf)
j = j + 1
If Mid$(buf, i, 1) <> Mid$(FindStr, j, 1) Then
j = j - 1
myCode = myCode & "," & Asc(Mid$(buf, i, 1))
End If
Next i
Next m
If myCode <> "" Then
Ans = MsgBox(r.Address(False, False) & "セルの「" & FindStr & "」という文字の中に" & vbLf & _
"文字コード(" & Mid$(myCode, 2) & ")が含まれています。", vbOKCancel)
If Ans = vbCancel Then Exit Sub
End If
End If
Next r
End With
End Sub
(momo)
オートフィルタを作成後、追加でコールバックと 入力したりしていませんか? 追加で新しくデータを入力するとオートフィルタが 正しく反応しないことがあります。 一度オートフィルタを解除して、再度作成後に 試してみてはいかがでしょうか?
または、かなりの行数があるなどではないですか? オートフィルタにも限界はありますので 使用量に注意してみてもいいかもしれません。
見当違いでしたら、ごめんなさい。
(*花*)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.