[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『検索して当てはまるセルに移動したいのです』(レリオネ)
[同じファイルの中で、検索して当てはまるセルに移動したいのですがどうすればよいでしょうか?]
後は、好きなように調整や変更等をしてください。
Sub 見本() Dim ws As Worksheet, fcel As Range, flg As Boolean For Each ws In Worksheets Set fcel = ws.Cells.Find(What:="う", After:=ws.range("IV65536"), LookIn:=xlFormulas, LookAt:= _ xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True) If Not fcel Is Nothing Then flg = True Exit For End If Next If flg Then ws.Select fcel.Select End If End sub
(BJ)
こちらに統合しました。(kazu)
Sub 見本()
Dim ws As Worksheet, fcel As Range, flg As Boolean For Each ws In Worksheets Set fcel = ws.Cells.Find(What:="う", After:=ws.range("IV65536"), LookIn:=xlFormulas, LookAt:= _ xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True) If Not fcel Is Nothing Then flg = True Exit For End If Next If flg Then ws.Select fcel.Select End If End sub
(レリオネ)
例えば、こんな感じ。
What:="う" ↓ What:=Sheets("Sheet1").Range("A1").Vlaue BJ
変数を用意して変数に代入してみてはどうでしょうか? (SoulMan)
もしかして〜 スペルが違うかも。。。 What:=Sheets("Sheet1").Range("A1").Vlaue ~~~~~ ↑Value BJさん、突っ込みすんませんっっm(_ _)m (キリキ)(;⌒o⌒)b ←書き間違いはいつも・・・orz
わたしゃ嫌われてまでいいたかないけど、、これって これと↓ Option Explicit Sub 見本() Dim ws As Worksheet, fcel As Range, flg As Boolean For Each ws In Worksheets Set fcel = ws.Cells.Find(What:=Sheets("Sheet1").Range("A1").Value, After:=ws.Range("IV65536"), LookIn:=xlFormulas, LookAt:= _ xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True) If Not fcel Is Nothing Then flg = True Exit For End If Next If flg Then ws.Select fcel.Select End If End Sub これと↓ Sub 見本1() Application.Goto Sheets("Sheet1").Range("A1") End Sub どう?違うわけ?? (SoulMan)
Sheet1が一番左にない場合を考えれば判ります。 質問者の方は、 >シート上で例えばセルA1に入力した文字を検索してくれる方法 Sheet1かどうかは判りませんので、BJさんはSheet1の場合はこんな感じですって アドバイスされているだけかもしれません。 BJさんの最初のコメント >後は、好きなように調整や変更等をしてください。
(川野鮎太郎)
回答ってなんだろう??っと最近、思った。。。。。 Excelの初心者が質問して達人が回答する。。 それも一例だろう・・・それもいいだろう・・・・ >Sheet1が一番左にない場合を考えれば判ります。 そりゃそうだろう。。。間違ってない。。。。 でも、本当にそうだろうか? >『検索して当てはまるセルに移動したいのです』(レリオネ) >[同じファイルの中で、検索して当てはまるセルに移動したいのですがどうすればよいでしょうか?] >後は、好きなように調整や変更等をしてください。 重箱の隅を突付いて他人のアラをほじくり出して話をまぜくりまわそうなって気はさらさらない。 ↑別に格好付けてる訳でもない。 回答・・・・ そりゃそうだろう・・・間違ってない。。でも、正解とも私には思えない。 じゃ、正解を書けばいいじゃん・・と言われれば、、それもまた、、そうだろう・・・ 私は、この学校でExcelを学んだ。 この学校でExcelを教えてもらった。 私は、この学校が好きだ! 私は、この学校で今もExcelを学んでいる。。。 回答を導く手段はいくつもある。いく通りもある。 スキル?上には上がいる・・揚げ足を取れば切がない。。。。 初心者?上級者?達人?誰が達人で誰が初心者? 「エクセルの学校」・・・・ そう、、ここは「エクセルの学校」・・・・ 私が言いたいのは、ただ、それだけだ。ただ、今は、多くを語らずにおこう。。。 そう思った。。。ただ、、それだけだ。。 (SoulMan)独り言・・・・・]
そういう条件であれば、以下でいけますでしょうか。 BJさんのコードをお借りしました。 Option Explicit Sub Test() Dim fcel As Range With ActiveSheet Set fcel = .Cells.Find(What:=.Range("A1").Value, _ After:=.Range("A1"), _ LookIn:=xlFormulas, LookAt:= _ xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=True) fcel.Select End With End Sub
(川野鮎太郎)
> もしかして〜 > スペルが違うかも。。。 > What:=Sheets("Sheet1").Range("A1").Vlaue > ~~~~~ > ↑Value すみません。 また、A1に記入して・・・。は見落として、After・・・は、修正できませんでした。
>これと↓ >Sub 見本1() >Application.Goto Sheets("Sheet1").Range("A1") >End Sub >どう?違うわけ?? >(SoulMan) しつこく絡んでくるみたいですが、ほんとにしつこいやつ! 下の.Count > 2は、なんの為に有るんですか?
If .Count > 2 Then Set r = .Find("*", , xlValues, xlWhole, xlByRows, xlNext, True) If Not r Is Nothing Then Set r = .FindNext(r) MsgBox r.Value End If End If
Find使ったら、フィルタ使う必要も無いようにも思える。 BJ
>下の.Count > 2は、なんの為に有るんですか? 見出しも含めて「抽出されたら」という意味で使ったと思うのですが、 それでも、 If .Count > 1 Then でもいいような気もしますし、あまり意味がないですね。失礼しました。 >Find使ったら、フィルタ使う必要も無いようにも思える。 なので、コピーされてはどうですか? とご提案したと思うのですが、、、 どうでしょうか? (SoulMan)
違うスレでの問題を他の方へのスレに持ち込むのはやめましょう。 こちらでのことでしょう。 [[20050901122048]]『ラベルへの印刷』(banzai)
(川野鮎太郎)
>しつこく絡んでくるみたいですが、ほんとにしつこいやつ! 多分、私に対しての発言かと思いますが、あなたにこの様な呼ばれ方を される覚えはありませんし、こういった掲示板を今後利用されるのであれば、 最低でもネチケだけは守って暴言は慎まれた方がいいですよ。 >違うスレでの問題を他の方へのスレに持ち込むのはやめましょう。 失礼しました。これはごもっともです。とっさのことで思わず書き込みをしてしまいました。 以後注意したいと思います。 ということで、、私はレンタルではありますが、個人的に掲示板も持っていますので、 私に対してのご意見がございましたら、誹謗、中傷や他の人が見て気分を悪くする 内容は削除する場合もあるかもしれませんが、可能な限りお答えしますよ。 最後になりましたが、レリオネさんレスをお借りして大変失礼しました。 何卒お許しくださいませ。m(__)m では、失礼致します。 (SoulMan)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.