Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


15622 / 76738 ←次へ | 前へ→

【66591】Re:検索中の文字列を取得したい
発言  toshiki  - 10/9/13(月) 6:38 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>> 検索ダイアログを次に表示したときに設定されている(前回入力した)文字列を取得する
>
>現在どのようなデータをどのようなコードで処理しているのでしょうか?
>提示していただくことはできませんか?
>
次のような内容です。
フォームを作成し、その中のコンボボックス(ufSrch.cbxSrchString)の文字列を次のようにFindメソッドで検索しています。
 Range(Cells(1, 1), Cells(Rows.Count, Columns.Count - 1)).Columns.Find(What:=SrchStr _
  , After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows _
  , SearchDirection:=xlNext, MatchCase:=False, MatchByte:=False, SearchFormat:=False).Activate
 Rows(ActiveCell.Row).EntireRow.Hidden = False
 If (ErrNum = 0) _
  Then
  Application.StatusBar = "↓Find! 行列番号:" & CStr(ActiveCell.Row) & "行" & CStr(ActiveCell.Column) _
             & "列(" & Replace(ActiveCell.Address, "$", "") & ") 「" _
             & ufSrch.cbxSrchString & "」 が見つかりました."



次に、別のボタンをクリックすると次のコード(FindNext)が動きます。
 Range(Cells(1, 1), Cells(Rows.Count, Columns.Count - 1)).Columns.FindNext(After:=ActiveCell).Activate
 Rows(ActiveCell.Row).EntireRow.Hidden = False
 Rows(ActiveCell.Row + 1).EntireRow.Hidden = False
 If (ErrNum = 0) Then
  Application.StatusBar = "↓Find! 行列番号:" & CStr(ActiveCell.Row) & "行" & CStr(ActiveCell.Column) _
             & "列(" & Replace(ActiveCell.Address, "$", "") & ") 「" & ufSrch.cbxSrchString _
             & "」 が見つかりました."



しかし、最初にExcelの検索ダイアログで検索して、FindNextメソッドを動かすと"「」が見つかりました。"と(当然ですが)なります。これを避けたいわけです。

2 hits

【66563】検索中の文字列を取得したい toshiki 10/9/10(金) 21:52 質問
【66564】Re:検索中の文字列を取得したい かみちゃん 10/9/10(金) 21:58 発言
【66591】Re:検索中の文字列を取得したい toshiki 10/9/13(月) 6:38 発言
【66595】Re:検索中の文字列を取得したい Abyss 10/9/13(月) 14:08 発言
【66600】Re:検索中の文字列を取得したい toshiki 10/9/13(月) 16:56 お礼
【66565】Re:検索中の文字列を取得したい kanabun 10/9/10(金) 23:53 発言

15622 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free