プロが教えるわが家の防犯対策術!

検索のウインドウですが
常に表示しておきたいのですが、最前面に出てしまうので邪魔な時が多いです。
クリップボードのように右端に表示させるか
ツールバーに表示させるようにする方法はありますでしょうか??

住所録と予約の注文をエクセルで管理しておりまして
固定電話に着信があった時にナンバーディスプレイで電話番号を確認し、電話番号の下4桁を検索してから電話を受けるとスムーズに注文がとりやすいのです。

邪魔にならなくてすぐに使えるように検索ウインドウを表示しておきたいのですが…

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんばんは。



マクロで作ってみました。

>クリップボードのように右端に表示させるか
>ツールバーに表示させるようにする方法はありますでしょうか??

こんな感じでしょうか?
一通りの検索機能はあります。次の検索も可能です。

最初だけ、Auto_Open を実行してください。後は、設定したブックを開けば、検索ボックスが現れます。そのブックを閉じると、検索ボックスはなくなってしまいます。

設定されるまで、少し、時間が掛かります。

'標準モジュールに入れてお使いください。

Private c As Range
Private Fadd As String
Private Fdata As String

Sub Auto_Open()
 Call CommandMenu_Add
End Sub

Sub Auto_Close()
Dim myCBCtrl As CommandBarControl
 On Error Resume Next
 With Application.CommandBars("WorkSheet Menu Bar")
   .Controls("検索ツール(&K)").Delete
   .Controls("次検索...").Delete
 End With
 On Error GoTo 0
End Sub
'-----------------------------------
'実行メニュー
'-----------------------------------
Sub CommandMenu_Add()
Dim myCB As CommandBar
Dim cnt As Integer
Dim myCBCtrl As CommandBarControl
 On Error Resume Next
 '二重設定の回避
 With Application.CommandBars("WorkSheet Menu Bar")
   .Controls("検索ツール(&K)").Delete
   .Controls("次検索...").Delete
 End With
 On Error GoTo 0
 '
 Set myCB = Application.CommandBars("WorkSheet Menu Bar")
 cnt = myCB.Controls.Count
 With myCB.Controls.Add(Type:=msoControlEdit, Before:=cnt + 1, Temporary:=True)
  .Caption = "検索ツール(&K)"
  .TooltipText = "現在のシートの文字を検索します"
  .OnAction = "MyFind"
 End With
 With myCB.Controls.Add(Type:=msoControlButton, Before:=cnt + 2, Temporary:=True)
  .Caption = "次検索..."
  .OnAction = "myNextFind"
  .TooltipText = "次検索..."
  .Style = msoButtonCaption
 End With
Set myCBCtrl = Nothing
End Sub
Private Sub myFind()
Dim myFind As String
 myFind = Application.CommandBars("WorkSheet Menu Bar").Controls("検索ツール(&K)").Text
 Set c = Nothing
 Fadd = ""
 Fdata =""
 Set c = ActiveSheet.Cells.Find( _
 What:=myFind, _
 LookIn:=xlValues, _
 LookAt:=xlPart, _
 SearchOrder:=xlByRows, _
 SearchDirection:=xlNext, _
 MatchByte:=False)
      If Not c Is Nothing Then
       Fadd = c.Address
       Fdata = ActiveWorkbook.Name & "!" & ActiveSheet.Name
       c.Select
      Else
       Beep
     End If
End Sub
Private Sub myNextFind()
'次の検索
   On Error GoTo ErrHandler
   If c Is Nothing Then Exit Sub
   If Fdata <> ActiveWorkbook.Name & "!" & ActiveSheet.Name Then
     Fadd = c.Address
     Fdata = ActiveWorkbook.Name & "!" & ActiveSheet.Name
   End If
   Set c = Cells.FindNext(c)
   c.Select
   If c.Address = Fadd Then
     Beep
   End If
   Exit Sub
ErrHandler:
 MsgBox "検索できませんので、新たに、検索ボックスから実行してください。", vbInformation
End Sub
    • good
    • 0
この回答へのお礼

はじめてマクロを使います。

ツールバー内に検索ウインドウが表示され
邪魔にならないし、常に表示させておくことができました。

ほんとうにありがとうございました。
大事に使わせていただきます。

お礼日時:2006/12/05 00:53

ご要望のものとは違いますが


任意のセルを検索窓とし、電話番号の下4桁を、入力
データの表からその4桁をキーに関数(VLOOKUP関数)でその他の住所や名前の項目を表示する仕組みを作ってはいかがでしょう

http://www.yoshikawa.co.jp/ybs/skilup/ybs0308.htm
http://allabout.co.jp/computer/msexcel/closeup/C …
    • good
    • 0

おそらくご希望の機能はエクセル自身には無いと思います。


ちなみに、Ctrl+Fキーで「検索」のショートカットになります。
この方法は使えないでしょうか?
    • good
    • 0
この回答へのお礼

今現在はショートカットで検索を呼び出したり
検索ウインドウを出しっぱなしにしてます。

お礼日時:2006/12/04 20:20

◆メニューバーの[ウィンドウ]-[整列]を選択して、並べて表示すれば、いいのでは


◆なお、同じファイルの場合は、メニューバーの[ウィンドウ]-[新しいウィンドウを開く]を選択してから、「整列」を選択してください
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExcelのワークシート上に検索窓とボタンを作りたい

Excelのワークシート上に検索窓とボタンを作ろうとしています。
コントロールツールボックスからテキストボックスとコマンドボタンを1つずつ配置しました。ボタンを押すと検索用マクロが動作してテキストボックスに入力した文字を別のシート上から検索する仕組みです。計画どおりの動作をするようになったのですが、使い勝手についていくつか不満があるので解消したいのです。

1.検索窓のあるシートを開いたとき、カーソルがテキストボックス内にある状態にしたい。

2.カーソルがテキストボックス内にある状態でEnterキーを押すと、検索用マクロが動作するようにしたい。

3.カーソルがテキストボックス内にある状態でTabキーを押すと、コマンドボタンにフォーカスが移るようにしたい。

自分でも色々調べてみたのですが、どうにも分かりません。よろしくお願いします。

Aベストアンサー

こんにちは。
こういうのはユーザーフォームで作ったほうが簡単なんですが。

>1.検索窓のあるシートを開いたとき、カーソルがテキストボックス内にある状態にしたい。

これはシートのActivateイベントで、TextBox1.Activateするだけです。

>2.カーソルがテキストボックス内にある状態でEnterキーを押すと、検索用マクロが動作するようにしたい。

テキストボックスのKeyDownイベントで押されたキーを取得できる。
KeyDownイベントの引数KeyCodeには押されたキーコードが入りますからこれが13(=vbKeyReturn)だったら検索マクロを実行すれいいです。

>3.カーソルがテキストボックス内にある状態でTabキーを押すと、コマンドボタンにフォーカスが移るようにしたい。

同様にKeyDownイベントでTabが押されたことを取得して、コマンドボタンをアクティブにします。Tabキーのコードは9(=vbKeyTab)

Private Sub CommandButton1_Click()
検索マクロ
End Sub

Private Sub CommandButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then 検索マクロ
End Sub


Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then 検索マクロ
If KeyCode = vbKeyTab Then Me.CommandButton1.Activate
End Sub

Private Sub Worksheet_Activate()
Me.TextBox1.Activate
End Sub

こんにちは。
こういうのはユーザーフォームで作ったほうが簡単なんですが。

>1.検索窓のあるシートを開いたとき、カーソルがテキストボックス内にある状態にしたい。

これはシートのActivateイベントで、TextBox1.Activateするだけです。

>2.カーソルがテキストボックス内にある状態でEnterキーを押すと、検索用マクロが動作するようにしたい。

テキストボックスのKeyDownイベントで押されたキーを取得できる。
KeyDownイベントの引数KeyCodeには押されたキーコードが入りますからこれが13(=vb...続きを読む

Qエクセルで検索窓のようなものを作る

エクセルのシートにテキストボックスとコマンドボタンを配置してシート上のデータを検索することは可能でしょうか?今現在はB列に、複数の文字データが入力してあるので、オートフィルタのオプションから「を含む」で検索してます。
イメージとしては、オートフィルタのオプションから「を含む」を選んでから検索しなくても予めシートに用意してあるテキストボックスに検索したい文字を入れてボタンを押すと、オートフィルタで検索したときと同じような結果が得られるようにしたいと思ってます。

例)
 
 A    B    C    
--------------
1     血液型     

2      A

3      B

4      O

5      AB

上のような表があったとして、テキストボックスにAと入力してボタンを押すとB2とB5が表示されるようにしたと思ってます。いい方法があればご教示願います。

Aベストアンサー

シートにテキストボックス1個、コマンドボタン2個を配置します。
これは出来ますね。
コマンドボタン1個目は検索ボタン、2個目は解除ボタンです。

ツール→マクロ→Visual Basic Editorを選択して
シートに以下のコードを貼り付ける。

------------------ ここから下 ----------------------
Option Explicit

Private Sub CommandButton1_Click()
Rows("1:1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="=*" & TextBox1.Value & "*", Operator:=xlAnd
End Sub

Private Sub CommandButton2_Click()
Selection.AutoFilter
End Sub
---------------- ここまで ------------------

エクセル2000です。
機能は「を含む」です。つまり文字列のどこにでもテキストボックスに入力した文字が含む行を表示します。
ではでは

シートにテキストボックス1個、コマンドボタン2個を配置します。
これは出来ますね。
コマンドボタン1個目は検索ボタン、2個目は解除ボタンです。

ツール→マクロ→Visual Basic Editorを選択して
シートに以下のコードを貼り付ける。

------------------ ここから下 ----------------------
Option Explicit

Private Sub CommandButton1_Click()
Rows("1:1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="=*" & TextBox1.Value & "*", Operator:=xlAn...続きを読む

Q検索関数を使って検索窓を作成したいんですが・・・

検索関数を使って検索窓を作成したいんですが・・・

仕事でExcelを使っていて他の人に聞いても解決できなかったのでこちらでご質問させて頂きます。

質問内容は検索です。

データの範囲内にある数値、文字など、全てが対象になります。
条件は下記の通りです。
1.検索窓のようなセルに毎回関数など入力せず、文字や数字を入力するだけ。googleなどの検索窓と同じです。
2.検索結果は検索窓の右側に自動的に表示。検索内容を変更した時に自動的に反映される。
3.検索例
例1) 岡田 ←名前だけで検索
例2) 2010/01/20 ←日付で検索
例3) 岡田 A-102W ←名前と型番で検索
例4) 岡* ←ワイルドカードも使用可能
4.データ範囲はシートをまたぐこともあり。


つまり、A1というセルに文字を入力すればその文字に関する情報が一覧表示されるということです。

上記の条件でやりたいんですが、マクロやVBAなどは全くわかりませんので、
エクセルの関数のみで何とかならないでしょうか。

よろしくお願いします。

検索関数を使って検索窓を作成したいんですが・・・

仕事でExcelを使っていて他の人に聞いても解決できなかったのでこちらでご質問させて頂きます。

質問内容は検索です。

データの範囲内にある数値、文字など、全てが対象になります。
条件は下記の通りです。
1.検索窓のようなセルに毎回関数など入力せず、文字や数字を入力するだけ。googleなどの検索窓と同じです。
2.検索結果は検索窓の右側に自動的に表示。検索内容を変更した時に自動的に反映される。
3.検索例
例1) 岡田 ←名前だけ...続きを読む

Aベストアンサー

次のようにしてはどうでしょう。
1行目は項目名でA1セルはNo,B1セルは伝票No、C1セルは日付、D1セルは担当者、E1セルは型番とします。それぞれのデータが下方に入力されているとします。
F列は作業列でF2セルには次の式を入力して下方にオートフィルドラッグします。
=IF(D2&E2=H$2,MAX(F$1:F1)+1,IF($H$4="","",IF(COUNTIF(INDEX(A:E,ROW(),$H$4),$H$2)>0,MAX(F$1:F1)+1,"")))
H1セルには検索と文字を入力しH2セルには検索したい伝票Noや日付、担当者名、型番などを入力します。なお、担当者と型番を組みで検索する場合には担当者名に続けて型番を入力します。
H4セルには次の式を入力します。
=IF(COUNTIF(A:A,H2)>0,1,"")&IF(COUNTIF(B:B,H2)>0,2,"")&IF(COUNTIF(C:C,H2)>0,3,"")&IF(COUNTIF(D:D,H2)>0,4,"")&IF(COUNTIF(E:E,H2)>0,5,"")
お求めの表はJ列からN列に表示させるとして1行目にはA1セルからE1セルまでの文字をコピーします。
J2セルには次の式を入力してN2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。
=IF(COUNTIF($F:$F,ROW(A1))=0,"",INDEX($A:$E,MATCH(ROW(A1),$F:$F,0),COLUMN(A1)))
これでH2セルに検索したいデータを入力することで、該当するデータがJからN列に表示されます。
なお、作業に使われている列については非表示にする、セルについては文字の色を白にするなどのことをすればスッキリするでしょう。
シートが別にある場合にもご自分で工夫してみてください。

次のようにしてはどうでしょう。
1行目は項目名でA1セルはNo,B1セルは伝票No、C1セルは日付、D1セルは担当者、E1セルは型番とします。それぞれのデータが下方に入力されているとします。
F列は作業列でF2セルには次の式を入力して下方にオートフィルドラッグします。
=IF(D2&E2=H$2,MAX(F$1:F1)+1,IF($H$4="","",IF(COUNTIF(INDEX(A:E,ROW(),$H$4),$H$2)>0,MAX(F$1:F1)+1,"")))
H1セルには検索と文字を入力しH2セルには検索したい伝票Noや日付、担当者名、型番などを入力します。なお、担当者...続きを読む

QExcel VBA 検索した値を入力フォームに表示

VBA初心者ながら、顧客管理用に入力フォームなどを作っています。

検索フォームを作成し、名前や住所などをキーワードに実行ボタンを押して検索すると、顧客シートからデータを引っ張ってきて、検索フォームの下に対象リストが表示されます。(今回の場合は顧客シートのNo1、12、17のデータを引っ張ってきています。)

そこから、イメージとしては、画像のように3件結果が出力された内、一番上の検索結果をクリックすると、入力フォームに選択した対象者の情報が表示されるようなことをしたいのですが、何から手をつけたらよいかがわかりません・・・。

ちなみに、検索フォームに表示される値は、実際の入力フォームに入力する項目より少ない(例えば、入力フォームでは「ふりがな」がありますが、検索フォームに検索結果としては「ふりがな」は表示されていません。)

かなり大雑把な質問ですが、アドバイスなど頂けると幸いです。

Aベストアンサー

リストで選択したデータが存在する行番号が rowNumber に正しく取得できていますか?
私のサンプルで想定している環境は以下のように想定しています。

・ データ群が書き込まれているシートの 1行目が項目名になっていて、2行目からデータが入力されている。
・ 1つのデータは 1行で完結する。
・ 1列目(A列)には抜けもれなく通し番号が振ってある。(1件目の A2 が 1 で、 2件目の A2 が2、以下 1ずつ増えていっている)
・ 検索フォームのリストボックスの 1列目は、データ群のシートの A列の値(通し番号)が表示されている。

という状況なので、
1. 検索結果のリストから 1つのクリックする。
2. クリックされたリスト項目の 1列目の値をもとに、元の場所の行番号を割り出す。(元のデータのシートは 2行目からデータが始まっているのでリスト項目 1列目の値に 1 を加算すれば元の行番号になる)


もし以下のような環境だと、選択したリスト項目の内容から元のデータの行番号を推察することができません。
・ データ群のシートの 1列目は ID となっていて、改廃されていくと番号が飛ぶこともある。
・ 検索フォームのリストの 1列目は ID の値である。

この場合はリストボックスの 1列目に隠し列を作って起き、元の行番号を表示させておくのはどうでしょうか。
1列目の列幅を 0 pt にすれば見えません。(ColumnWidth プロパティ)

リストで選択したデータが存在する行番号が rowNumber に正しく取得できていますか?
私のサンプルで想定している環境は以下のように想定しています。

・ データ群が書き込まれているシートの 1行目が項目名になっていて、2行目からデータが入力されている。
・ 1つのデータは 1行で完結する。
・ 1列目(A列)には抜けもれなく通し番号が振ってある。(1件目の A2 が 1 で、 2件目の A2 が2、以下 1ずつ増えていっている)
・ 検索フォームのリストボックスの 1列目は、データ群のシートの A列の値(通し番号)...続きを読む

Q(Excel)あるセルに文字を入力しただけで、同じブック内のほかのワークシートにも、同じ文字が自動的に入るようにするには?

こんにちは。
質問内容はタイトルのとおりです。

あるワークシートのあるセルに文字を入力すると、ほかのワークシートのセルにも同じ文字が自動的に書き込まれる方法を知りたいです(ブックは同じ)。複数のワークシートを制御するには、やはりマクロを使うのでしょうか?

よろしくお願いします。

Aベストアンサー

clam_chowderさん、こんにちは。

Sheet1のA1にたとえば「100」と入力しますね。
Sheet2のA1に、これと同じ数値を表示するには、
 =Sheet1!A1
でOKです。

数式をいれるのが苦手なら、
Sheet2のA1セルで「=」を入力すると、数式入力状態に入りますから、
ここでSheet1のシートタブをクリックし、
リンクしたいA1セルをクリックしてEnterすると、
自動的にさきほどと同じ式が入ります。

Qエクセル2013 検索→シートへの移動

エクセルで文字検索したあと、マウスを使って検索窓から
シートへ移動するんですが、この一連の操作を
キーボードのほうで移動できないでしょうか?

ちなみに
検索窓からシートへの移動 ⇒Alt+Shift+F6
シートから検索窓への移動 ⇒Ctrl+Alt+F6
もやってみましたが全く動きません

よろしくお願いします

Aベストアンサー

#1です。

Alt+Fは「次を検索」ボタンのクリックと同じ意味になります。
画像でわかりますが、ダイアログの「次を検索」にフォーカスがあるので
”Enter”キーの操作でも、次を検索可能です。


先の回答にも記述しましたが、フォーカスが検索ダイアログにあるので
検索結果によりシートの該当セルの表示はできますが、フォーカスはありません。
つまり、データ入力キーの操作は検索ダイアログに対して行われます。

ご質問の意味がシートへのフォーカス移動&データ入力可能状態であれば
検索ダイアログを閉じる操作により可能です。
検索ダイアログにフォーカスがある場合、Escまたは、Alt+F4操作で
ダイアログを閉じることが可能です。

ちなみに検索ダイアログが表示されている場合でも、
シートをマウスクリックすれば、フォーカスはシートに戻りますので
検索ダイアログを表示した状態でシートへのデータ入力が可能になります。

Qエクセルの画面上にテキストBOXを常時表示させる

いつもおせわになります。
エクセル2002を現在使用しておりますが
エクセルの機能またはVBAでもその他の機能を使って
でも良いのですが、エクセルの画面の前面に常時メッセー
ジ的なものを
表示させておきたいのですが良い方法はありませんか

実際にやりたい事は
エクセルの操作方法をメッセージの部分に表示させて
それを見ながら操作をやってみるような事をやりたいと思ってます
よろしく御願い致します

Aベストアンサー

簡単なのは、UserFormを1個つくり、テキストを書いておいて
標準モジュールに
Sub Auto_Open()
 UserForm1.Show False
End Sub
と書けばそれ風になります。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qエクセルで文字検索したあとに・・・

エクセルで文字検索したあと、マウスを使って、検索窓から
エクセルのシートへ移動するんですが、マウスを使わずに
キーボード操作(ショートカットキー)で移動できないでしょうか?
いちいちマウスを持つのが時間の無駄のような気がして・・・

どなたかご存知の方は教えてください。
ちなみに、FMV-830NU/L ノートパソコンを
使っています。
よろしくお願い致します。

Aベストアンサー

こんにちは。

検索は → Ctrl + F
検索窓からエクセルのシートへ移動する  →Alt + F6
検索窓に戻る場合も同じ

ただし、モードレスモード(窓から出て作業できる仕様)があるのは、XL2002 以上だと思います。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング