• ベストアンサー

ExcelのVBAについて。

ExcelのVBAについて。 ハイパーリンクのイロハ? アクティブセルを入力して、それをリンク先にB10セルにハイパーリンクを作りたいのですが、textboxから迄しかできず、、自動的にできません。自動的に割り振り出来るようにするにはどうしたらよいでしょうか? 参考やヒントなどもよろしくお願いします。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

Linkの起点はセルB10としています。合ってますか? アクティブセルを直接リンク先としてセットしたいならば、標準モジュールに下記マクロを貼り付け、リンク先としたいセルを選択して実行します。 Sub LinkTest()  Dim adr1 As String  '// ここから  Dim adr2 As String  '// ここへ    adr2 = ActiveCell.Address  adr1 = "B10"  Range(adr1).Activate    ActiveSheet.Hyperlinks.Add _   Anchor:=Selection, _   Address:="", _   SubAddress:="Sheet1!" & adr2, _   TextToDisplay:="リンク" End Sub フォームから実行する場合は、上記を貼り付けた後、フォームのコマンドボタンのクリックイベントに、 Private Sub CommandButton1_Click()  On Error GoTo ErrorTrp    If TextBox1.Text <> "" Then   Range(TextBox1).Activate   Call LinkTest  End If  Exit Sub ErrorTrp:  MsgBox "アクティブセルの入力がおかしいです。" End Sub を貼り付けます。この場合、アクティブセルというより、リンク先セル? 質問を100%理解していないかもしれません。ご参考に。 当方、win10、Excel2010です。

seijiadb07
質問者

お礼

listboxからtextboxに転記後にハイパーリンクに記述したところ、。上手くいきました。ヒントになりました。ありがとうございます^^

seijiadb07
質問者

補足

B10セルは実は未入力の空白セルですが、ハイパーリンク設置時点で隣接セルであるB10に割り振りました。 回答欄にある通り質問自体の意味は100%理解できません。申し訳ないです。 ハイパーリンク自体は6行程で書けるのですが、、 特筆できるのは、「直接のセル番地を上手く呼び込めません」。。

その他の回答 (2)

  • kkkkkm
  • ベストアンサー率65% (1606/2443)
回答No.3

> リンク先に飛ぶあれです。 「あれ」とかかいうのはやめましょう。私の「あれ」とseijiadb07さんの「あれ」が一致するとは限りません。 > 自動入力にする際、どうしてか、なりません。 とは?何がどこからどこに自動入力されるのでしょう。自動入力とは? > セルにはリンク先の目的データが入っており 目的のデータとは?

seijiadb07
質問者

補足

あれ、のそれ。という該当するという意味です。 ありがとうございます。一応は解決しました^^ サブアドレスの欄にtextboxの入力を記述していますが、ハイパーリンクの記述以前にリストボックスのアドレスがありますが、そのアドレスをテキストボックスに転記して、ハイパーリンクに入れたら上手くいきました。今回はこれで締め切ります。是非また回答お願いします。。

  • kkkkkm
  • ベストアンサー率65% (1606/2443)
回答No.1

A1にURLを入れたらB10にハイパーリンクができるみたいなことですか? たとえば関数でするならこのような事ですか。 =HYPERLINK(A1) VBAが実行されるトリガーはなににするのでしょうか。

seijiadb07
質問者

補足

回答ありがとうございます。 B10にハイパーリンクを設置してリンク先に飛ぶあれです。 今回はセルからセルにハイパーリンクを作りたいのですが、、 自動入力にする際に、どうしてか、なりません。セルにはリンク先の目的データが入っており、、。簡単にアドレスのセル番地を自動入力する方法がないか調べています。

関連するQ&A

  • Excel VBAで自動的にハイパーリンクを設定する方法について教えて

    Excel VBAで自動的にハイパーリンクを設定する方法について教えてください。 VBAについては、ほとんど初心者なので、どうやって良いのか分かりません。 やりたい作業については、あるExcelのブックに一覧表があり、その一覧表のIDと合致したファイルをハイパーリンクさせたいのです。 一覧表は、 ID    項目  ・・・VBA A-0001  aaaa B-0002  bbbb の様になって、VBA列のセルをアクティブにするとID列のセルに自動でハイパーリンクが設定される。 そして、リンクをさせたいファイル名が"A-0001 aaaa・・・"となっているので 頭の6文字が合致したら、そのファイルを選択してくれるようにしたいです。 説明が下手で申し訳ありませんが、皆様のお知恵をお貸しください。 出来れば・・・ボタンを押すとリンクが貼ってないIDは、全てリンクがかかるようにもしたいのですが・・・。 欲張りを言って申し訳ありません。 宜しくお願いいたします。

  • エクセル・ハイパーリンク

    エクセルのハイパーリンクについて質問です。 ハイパーリンクでリンク先を 例)c:\Program Files\office とリンクさせたいとき、エクセルのA1のセルにProgram Files、B1のセルにofficeと書いてそれを参照し、c:\A1\B1 のような感じでできる方法はないのでしょうか? またVBA等でマクロを組んで似たようなものを作る事はできるのでしょうか? 稚拙な文章で申し訳ないですがよろしくお願いします。

  • Excel VBA-改行について

    Excel VBAで、UserFormのTextBoxに入力されたものをワークシートに表示させたいのですが、 TextBox内で、「Enter」キーが押されたら改行する方法と TextBoxで入力された通り(改行等)にワークシートのセルに表示する方法を どなたか教えて下さい。

  • VBAについて

    Excel97です、例えば セル A1 に入力し enterキーを押したら A5 がアクティブセルに B1 に入力しenterキーを押したら C5 がアクティブセルになるように するマクロの記述を教えてください。

  • エクセルのVBAで教えてください

    エクセルのVBAで教えてください、セルA1の値をマクロボタンを押すたびに、セルC1から順番にC2・C3・C4・・・・と下に自動的に入力するVBAを教えてください。

  • エクセルVBAで

    エクセルのVBAでやりたいことがあるのですが、 一枚のシートのセルA1に1が入っているとします。そこで自動でA2に2、B1に3、B2に4といったようにセルの値を一つずつ増やていったものを連番で10枚印刷しようと考えているのですがうまくいきません。ご教授願います。

  • EXCELのハイパーリンク

    EXCELのハイパーリンクについて教えて下さい。 EXCELにて700件程のハイパーリンクを作成しようと考えていますが数が多いため1件ずつハイパーリンク先を設定するには多くの時間と労力を要しますのであらかじめローカルフォルダ名とファイル拡張子を入力しておき、ファイル名だけを入力すればハイパーリンクを自動設定する方法はないでしょうか? お手数ですがお知恵をお貸し下さい。宜しくお願いします。 例) ・セルA1にローカルフォルダ名又はURLの一部 ・セルB1にファイル名又はURLの一部 ・セルC1にファイル拡張子又はURLの一部 これらを結合(A1&B1&C1)したハイパーリンク先をセルD1に表示すると共にセルD1をローカルフォルダ内のファイル又はサイトを自動的にハイパーリンク設定させる。

  • エクセル操作について(VBA)

    こんばんは。いつもお世話になってます。 エクセルの操作ですが、 シート1に A1セル 8:10 B1セル 12:05 C1セル 235(B1-A1の分換算) シート2に A1 7:01 B1 7:02 C1 7:03 D1 7:04 …  … ○1 8:10 … … △1 12:05 と入力されているとして、 ○2から△2まで(236セル)、自動的に色がつくようにしたいのですが、 関数や条件付き書式等で対応できるでしょうか? VBAならなんとかできそうですか? よろしくお願いします。

  • エクセルシートの塗りつぶしをVBAでやるには?

    エクセルのセル塗りつぶしについて(VBA) いつもお世話になっています。 エクセルシートで、任意のセルに数値を入力したとき、入力したセルから右側に向けて、その数値分、自動で塗りつぶすようにしたいのですが、どのようにすれば良いのでしょうか? 色は何でも構いません。 画像添付します。

  • エクセルVBAで、入力されたセルの位置を知りたい。

    エクセルVBAで、入力されたセルの位置を知りたいのですが、現在アクティブセルの位置の上が入力された位置と仮定して処理しています。これだとタブキー等でデーターを入力されてしまうと入力された位置が異なってしまいます。実際に入力された位置を知る方法はありますでしょうか。宜しくお願い致します。

専門家に質問してみよう