[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『オートフィルターの検索』(ミスター)
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.