• 締切済み

ExcelのユーザーフォームのテキストボックスにURL

Excel2003のユーザーフォームについて教えてください。 ユーザーフォームのテキストボックスがあり、数行の文章が入っていて、途中にURLが入っています。 このURLをクリックしたときに、ブラウザが開いてページを表示するようにいたいのですが、できますでしょうか? テキストボックスの内容は、使う人が変更できるようになっているため、文章中のURLの位置や、リンク先などは様々になります。 お願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

(準備) VBE画面のメニューで ツール その他のコントロール Microsoft Web Browserを探しチェックを入れる ツールボックスに地球のようなアイコンが追加される。 ーー (フォーム画面作成) エクセルで、VBE画面で挿入ーユーザーフォーム ユーザーフォームにテキストボックス1つ WebBrowserコントロール1つ貼り付け(サイズを相当拡げておく) ーー (コード) ユーザーフォームのコードに Private Sub UserForm_Click() アドレス = TextBox1.Text 'アドレスを設定する UserForm1.WebBrowser1.Navigate アドレス 'URIに飛ぶ End Sub ーー (操作) ユーザーフォームの実行 テキストボックスにURLを貼り付け(入力) フォームの地をクリック。 (結果) 指定したURLのページがWebBrowserコントロールの枠内に表示される。 ーー NAVIGATEのキッカケは、上記のようなフォームのクリックではなく、適当なものを考えてください。

coral_japan
質問者

お礼

お答えありがとうございます。 ユーザーフォームにホームページを表示することもできるのですね。 参考になりました。

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

指定のURLをIEで開く方法が↓で紹介されています。 http://www.ken3.org/cgi-bin/group/vba_ie.asp これをテキストボックスのダブルクリックイベントなどに 記述してはいかがでしょう?

coral_japan
質問者

お礼

お答えありがとうございます。 ご紹介していただいたページ、じっくり見てみようとおもいます。

関連するQ&A

  • エクセル ユーザーフォームについて

    エクセル ユーザーフォームに関する質問です。 (1)ユーザーフォームを開くと同時に、あるテキストボックスに、その当日の日付が表示できるようにすることはできますか? (2)  A  B  C  D  E  1 名前 英語 数学 国語  2 青木  86 75 85 3 浅野  75 80 65 4 5  となっている場合に、E列のセルをクリックするとユーザーフォームが立ち上がるようにしたいのです。その際に、クリックしたセルが(E列,2行)でしたら、青木君の成績がユーザーフォーム上の各テキストボックスに表示され、また、(E列,18行)をクリックした場合には、18行目の鈴木君の成績が・・・というようにしたいのですが、わかりません。 ご親切な方がおりましたら、是非とも宜しくお願い致します。

  • VBEユーザーフォームのテキストボックスがいっぱい

    excel2000を利用しています。 ユーザーフォームで、大量のテキストボックスを貼っているのですが(1000個近く) これのオブジェクト名をひとつひとつ変えるのが、すごく大変で、リストみたいな感じで、簡単に変更することが出来ないかな? 何かいい方法がないかなって悩んでいます。 何かいい方法等、あればアドバイスお願いいたします。

  • Excelテキストボックス内の文章リンクについて

    Excel2010 テキストボックス内の文章に対してリンク設定は可能でしょうか? 1つのテキストボックス図形内に文章を書き込んでいます。 その中で、 http:// http:// とあるのですが、上記のURLへ対して個別にリンクする方法はないでしょうか? もしくは何か良い方法があればご教授いただけると助かります。 よろしくお願いいたします

  • エクセルVBAのユーザーフォーム上のテキストボックスについての質問です

    エクセルVBAのユーザーフォーム上のテキストボックスについての質問です。 Aのユーザーフォームの内容をBのユーザーフォームのテキストボックスへ引き継いで、Bのユーザーフォーム上で内容を編集するという仕組みにしたいのです。 Bのユーザーフォームは新規入力もかねたユーザーフォームなので、テキストボックスのイベントにAfterUpdateを使用して、テキストボックスの内容が書き換えられるとデータベースから検索して新規か既存か判断させています。 AのユーザーフォームからBのユーザーフォームのテキストボックスへ引継ぎさせるときにこのAfterUpdateを発生させたくないのですが、Application.EnableEvents=Falseなどを使ってもイベントが発生してしまいます。 また、イベントがどのタイミングで発生するかと、コードをステップで実行させると、このイベントは発生しません。そのために、いきづまってしまいました。 AのユーザーフォームからBに引き継ぐ処理  ユーザーフォームB.Load ---ユーザーフォームBのイニシャライズが実行される  ユーザーフォームB.テキストボックス = ユーザーフォームA.テキストボックス  ユーザーフォームB.Show ちょっと簡単に書きすぎですがこんな感じです。 コードをステップで実行するとユーザーフォームBのAfterUpdateは実行されません。(VBAエディタのバグ?) どなたか回答お願いします。

  • ユーザーフォームのスクロールについて(エクセル2000VBA)

    お世話になります。 上下に長いユーザーフォームを作成し、スクロールして使っています。 1~4まで項目があり、ボタンをクリックするとその項目の先頭まで自動的にスクロールするような仕組みを作りたいのですがどうしたらよいでしょうか? Private Sub CommandButton1_Click()  TextBox1.SetFocus  '項目の先頭にあるテキストボックスに移動する End Sub という風なコードはできたのですが、ボタンの位置よりテキストボックスが下にあると、フォーカスしたテキストボックスがユーザーフォームの一番下に表示されてしまいます。 また、上方向にいく時も、テキストボックスの1行上に配置してあるタイトル(ラベルで作成しました)が表示されないので少し不便な気がします。 例えば、FAQサイトによくあるような、目次をクリックするとその項目が一番上に表示され、「Top」をクリックしてページ先頭にジャンプするような感じにしたいのですが…。 よろしくお願いします。

  • リッチテキストボックスのリンクについて

    こんばんは、質問させてください。 リッチテキストボックスに表示されているリンクをクリックすると、 そのクリックしたリンクをブラウザで開くようなソフトを作りたいのですが、 イマイチ方法がわかりません。 LinkClickedのイベントを使うところまでは何とかわかったのですが、 そこからどうやってリンクのURLをブラウザで開くのかがわかりません…。 どなたかご教授願います……。

  • エクセルのユーザーフォームについての質問です。

    エクセルのユーザーフォームについての質問です。 かなりの初心者です。 テキストボックスを3つ、チェックボックスを10個作りました。 チェックボックスは複数チェックすることができます。 コマンドボタンをクリックすると、テキストボックスに入力された値とチェックされた チェックボックスがsheet1に自動入力できるようにしたいです。 たとえば、 テキストボックス1には「あいう」 テキストボックス2には「かきく」 テキストボックス3には「さしす」と入力。 チェックボックス1から10のうち、「1」「2」「3」にチェック。 この状態でコマンドボタンをクリックすると、Sheet1には     A列       B列       C列        D列 1行目 テキスト1    テキスト2    テキスト3     チェックボックス 2行目 あいう      かきく      さしす       1 3行目 あいう      かきく      さしす       2 4行目 あいう      かきく      さしす       3 このように、チェックボックスにチェックがあった数だけ、テキストボックスも コピーされて、次々と下の行に入って行くようにしたいのです。 こんなことができるのでしょうか? できるのなら、コードを教えてください。 お願いします。

  • ユーザーフォームについて

    エクセル2002です。 ユーザーフォーム内のテキストボックスを使用して、 (1)A1のセルに1と入力されている状態でマクロを起動した場合、 (2)ユーザーフォーム内のテキストボックスには2と表示される (3)ユーザーフォーム内のボタンを押すと、A2のセルに2と入力される。 このような流れで、A列のデータ最終行に番号をふっていきたいです。 (A列のデータ最終行がA30なら、A31に31と番号をふる) ユーザーフォームのテキストボックスとボタンは作ってあるのですが、 それぞれに入れるコードを教えていただけないでしょうか。 よろしくお願いします。

  • ユーザーフォーム内のテキストボックスで改行

    ユーザーフォーム内のテキストボックスで改行をしたいんですが、どのようにすればいいんでしょうか? EnterKeyBehaviorっていうところかと思って「True」にしてみたんですが変わりませんでした…

  • Javascriptで、フォームボタン押下(submit)せず、リンクURLを書き換える

     javascriptで、  1.フォームのテキストボックスに入れられた値を取得し、   例)テキストボックス入力 ; test  2.元々記述されているリンクURLをユーザがクリックした時、   例)元々のリンクURL ; <a href="www.google.co.jo?q= ~...  3."1"のテキストボックス内に記述された値を取得して、"2"のURLを書き換え、   例)テキストボックス内の文字をURLの一部に追記する ; <a href="www.google.co.jo?q=test  ~...  4.書き換えられた後のURLにユーザを飛ばす、  ・・・という事って出来るんでしょうか。  上記動作内でユーザの動作は、   テキストボックスに文字を入れる、という動作と、   リンクをクリックする、という動作のみです。  フォームのボタン押下後、というのであれば出来たんですが、上記の様な動作のコードが思い浮かびません・・・。PHPとかCGIではなく、Javascriptで何とか出来ないでしょうか。  お知恵拝借、よろしくお願いします。

専門家に質問してみよう