Excel / VBA - 複数のリターンを伴う検索検索
- 状況によっては、見つかったオカレンスの詳細をすべて知る必要があります。
- これは以下の機能で達成されます。
公開モジュール内
'ルクーントゥールは、演説をこなします' WkbN =名曲集、名曲集、 'WksN =名曲集' Plage = lescoordonnéesde la plageàparcourir。 'Retourは、タブロー寄稿者を引き合いに出しています。 関数RechFind(文字列としてのByVal Cle、文字列としてのByVal WksN、文字列としてのByVal Plage、長さとしてのByRef TBadress()、長さとしてのIx、ワークブック付きPrAddress(WkbN).Sheets(WksN) .Range(Plage)Set Cherche = .Find(Cle)Chercheが何もない場合PrAddress = Cherche.Address Do ReDim保存TBadress(Ix)TBadress(Ix)= Cherche.Address Set Cherche = .FindNext(Cherche)Ix = 1xチェルシェではない間に+ 1ループし、チェルシュ。最後に 'nombre d'occurence' sで終わった場合は終了、最後に発生する場合は0を検索RechFind = 1チェルシェ=なしを設定 'Libérelamémoireオブジェ。 終了機能
Xlaワークブックに追加します。
マクロを使う
Sub RechMulti()Dim Rが長く、TB()Dim iが整数R = RechFind( "12 *"、ThisWorkbook.Name、 "Feuil1"、 "B1:B500"、TB())R> 0ならばi = 0からR - 1 '外向き(TB)'の例のシート( "Feuil1")セル(i + 4、5)=範囲(TB(i))行次へi終了ならば終了Sub
通話ボタンを使用する
非公開のSub CommandButton1_Click()長さが最小、TB()最小値が整数範囲( "E4:E20")ClearContents R = RechFind(範囲( "E2")、ThisWorkbook.Name、ActiveSheet.Name、範囲( "B1)アドレス、TB())R> 0の場合i = 0の場合R - 1 '外向き(TB)'の例)シート( "Feuil1")セル(i + 4、5)=範囲( TB(i))。次の行次の場合は終了Sub
ダウンロード
テストワークブックをダウンロードしてください。