• ベストアンサー

エクセルの関数

 エクセルの一つのセルに、ある言葉(例えば、笑顔)と入力すれば、別のエクセルのシートにリンクして飛ぶようにしたいのですが、if関数など使ってできるでしょうか?  ただし、セルをクリックするのではなく、笑顔と入力するだけで飛ぶようにしたいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>エクセルの一つのセルに、ある言葉(例えば、笑顔)と入力すれば、別のエクセルのシートにリンクして飛ぶように この1文ですが、1.xlsのsheet1のA1に「笑顔」と入力したら2.xlsのsheet1のA1に「笑顔」と入力するようにしたい。 という質問なのでしょうか? そうだと仮定した場合 簡単に関数もなにも使わない場合、1.xlsと2.xlsを開いて2.xlsのA1セルで「=」を入力した後、1.xlsのA1セルを選択しエンターを押すと1.xlsのA1に「笑顔」と入力すれば入力されます。全セルでその指定が必要になりますけれど・・・。 おまけに、起動の度に別ブックを参照していしていますというようなメッセージが表示されます。 「関数」でということですので、関数の場合は http://support.microsoft.com/kb/213933/ja  マイクロソフトのヘルプ 「Excel 関数 参照 別ブック」で検索をかけて見つけたものです。 こちらもセルの度に指定になりますのせ、全セルに対して入力が必要になります。 他の方法は、マクロを実行して、1.xlsに必要項目を入力した後にマクロを実行すれば2.xlsにコピーor2.xlsを作成という方法になるかと思われます。マクロ記述は大変ですが・・・。 仮定が違った場合 同じ1.xlsのSheet1とsheet2へのセル値のリンクであれば「=」でも別ブック参照の警告もなく表示されます。 記入したセルの値をプログラム実行を行わなくても自動的に転写するマクロも存在します。 http://billyboy.blog81.fc2.com/blog-entry-224.html こちらのサイトのようなマクロで同一ブックなら可能です。

Misasage
質問者

補足

 ハイパーリンクを設定していれば、そのセルをクリックすれば、リンク先が画面表示されますが、「笑顔」と入力することで、設定しているリンク先の画面表示ができないかということでした。  まずい質問のしかたをしました。方法があれば教えてください。よろしくお願いします。

その他の回答 (2)

回答No.3

関数でやる場合 =HYPERLINK("#Sheet2!A1","笑顔") Sheet1の任意せるにコピーして下さい。 すると、コピーしたセルに「笑顔」と表示され、Sheet2のA1に飛ぶリンクが挿入されております。 マクロを使用した場合 Book1を開いて頂き「ツール」-「マクロ」-「VisualBasicEditor」と選択していただき、Book1のsheet1をダブルクリックします。 そこに Private Sub Worksheet_Change(ByVal Target As Range) Dim MyRow As Long Dim MyCol As Integer MyRow = Target.Row '縦方向のセル指定 MyCol = Target.Column '横方向のセル指定 If MyRow = 1 And MyCol = 2 Then '縦方向に1,横方向に2=B2  If Target = "笑顔" Then 'Targetで上で選択されたセルの値=B2     test '動かしたいマクロ名 End If End If End Sub と標記して頂き 「右クリック」-「挿入」-「標準モジュール」と進んだ後、Module1に Sub test() 表示文字列 = "えがお" アドレス = "http://www.yahoo.co.jp/" Range("A1").Select ActiveSheet.Hyperlinks.Add Anchor:=Selection, _ Address:=アドレス, TextToDisplay:=表示文字列 End Sub と標記して頂きますと現状では 「セルB1に"笑顔"と入力するとA1に"えがお"と表示されYahooへのハイパーリンクが挿入」された状態になります。 変数の設定や範囲の変更などで、どのセルに笑顔と入力しても常にリンクが挿入されるように設定できるとおもいますが、 マクロ初心者の当方には出来ませんので、ご了承下さい。 他にも方法が存在するのかもしれませんが、ご参考になれば幸いです。

  • LHS07
  • ベストアンサー率22% (510/2221)
回答No.2

1.xlsのA1に笑顔と入力してEnterを押したら 2.xlsのA1に笑顔になっているのですか? 同じファイルを作っておくということですか? 他者には1.xlsというファイルを触らせないということですか?

関連するQ&A

専門家に質問してみよう