• ベストアンサー

ラベルに「コントロールソース」を設定することは不可能でしょうか?

単票形式のフォームのレコードソースに紐付くコントロールソースを ラベルに設定したいのですができません。 ハイパーリンクをテキストボックスではなく ラベル上に表示したいです。 テキストボックスのプロパティには「コントロールソース」があるのですが ラベルに「コントロールソース」はありません。 設定することは不可能でしょうか? VBAでも可能なら教えてください。 よろしくお願いします。

  • fsjkls
  • お礼率99% (430/432)

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

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.2

>「表示部分とハイパーリンクを「レコード移動時」に設定」 > とはなんのことでしょう? 表示部分 >  Me.lab00.Caption = sTmp ハイパーリンク >  Me.lab00.HyperlinkAddress = sTmp レコード移動時 > Private Sub Form_Current() > 指定した式にHyperlinkAddressプロパティに対する正しくない参照が含まれます エラーになった時、sTmp の内容はどうなっていたのでしょうか。

fsjkls
質問者

お礼

ちょっと難しかったので(1)の方法でやったら解決しました! わざわざご回答いただいたのに申し訳ございません。 もっと勉強して挑戦してみます! ありがとうございます。大変参考になりました。

その他の回答 (1)

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

> ラベル上に表示したいです > ラベルに「コントロールソース」はありません。 無いので、無理だと思います。 代替え案2つを以下に (1) テキストボックスをラベルのように見せる  テキストボックスの「編集ロック」を「はい」に設定し、見栄えもラベルに近づける。 (2) VBAでラベルへ設定する  連結されたテキストボックス名を「txt_HL」と仮定  テキストボックス「txt_HL」を非表示に  ラベル名を「lab00」と仮定  表示部分とハイパーリンクを「レコード移動時」に設定 Private Sub Form_Load()   Me.lab00.Caption = "" End Sub Private Sub Form_Current()   Dim sTmp As String   sTmp = Replace(Nz(Me.txt_HL), "#", "")   Me.lab00.Caption = sTmp   Me.lab00.HyperlinkAddress = sTmp End Sub ※ ハイパーリンク型のフィールドデータはパス以外、前後に "#" が付加されているようなのでそれを削除してラベルへ設定

fsjkls
質問者

お礼

すいません。 せっかくご回答いただいたのにうまくできませんでした。 まず 「表示部分とハイパーリンクを「レコード移動時」に設定」 とはなんのことでしょう? そして上記のコードを貼り付けて保存し、フォームを開くと 実行時エラー2455 指定した式にHyperlinkAddressプロパティに対する正しくない参照が含まれます。 となってしまいます。

関連するQ&A

  • サブレポートのテキストボックスのコントロールソース

    アクセス レポート サブレポートのテキストボックスのコントロールソースの設定をVBAでするタイミングを教えてください。 詳細_Formatイベントで、 Me.Controls("サブレポート").Report.Controls("月").ControlSource = "月" とすると 印刷プレビュー時または印刷を開始したあとは、コントロールソースプロパティを設定できません というエラーになります。 フォームからレポートを開いていて、フォームの値をサブレポートのテキストボックスのコントロールソースに設定したい場合、どのレポートのイベントで設定すればいいでしょうか? ご回答よろしくお願いします。

  • Accessのレポートのコントロールソースについて

    すみません。教えてください。 Accessのレポートで、レポートとしてはクエリー1をレコードソースに設定してありますが、その中の1つのテキストボックスにクエリー2(つまりレコードソースに設定した以外のクエリー)の項目を表示させたい場合、そのテキストボックスのコントロールソースには、どのように式を記載すればよいのでしょうか?

  • アクセス コンボボックス コントロールソース

    フォームにはレコードソースは指定してないけど そのフォーム乗っているコンボボックスのコントロールソースに とあるクエリの値を表示したい場合は どうすればいいでしょうか?

  • [Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには

    Accessにおいて。 帳票フォームの"詳細"に非連結のコントロール(例:テキストボックス)を配置し、それぞれ別々の値を持たせることは可能なのでしょうか? 例えば。 VBAにおいて、カレントレコードのAという値とBという値を計算し、その値を非連結のテキストボックスに挿入したとします。 単票フォームであれば、問題なくテキストボックスには計算後の値が表示されるわけですが…… 帳票フォームの場合では、"規定値"に計算式を入れたときと同様、先頭の値と同じものが連続するテキストボックスに表示されてしまいます。 これを回避し、計算後のデータを連続するテキストボックスにそれぞれの値として表示させるには、どのようにすればよいのでしょうか? もちろん、連結させたコントロールを使用すれば、問題はないのですが…… 状況によっては、これが行えた方が便利かと思い、質問させていただきます。 「帳票フォームでは不可能である」といった回答でもかまいません。 どうぞよろしくお願いいたします。

  • フォームのラベルのプロパティを自動で設定したい

    Access2013 vba です。 フォームの全てのラベル、テキストボックス、ボタン類をそれぞれの背景色や、テーマ、背景スタイルなどを設定したいのですが、どうやれば、全てのラベル、テキストボックス、ボタンなどを自動でループ処理で取得出来ますでしょうか。 よろしくお願いします。

  • テキスト型のフィールドでハイパーリンク

    アクセスのテキスト型のフィールド(URL)に http://bekkoame.okwave.jp/qa1111.html と入れていて、 そのテーブルを元にしたフォームを作成し、 フォームにテキストボックスを作りコントロールソースをURLにしました。 プロパティで ハイパーリンクあり:はい ハイパーリンクとして表示:ハイパーリンクである場合 としてますが、そのテキストボックスをクリックしてもハイパーリンクは開きません。 色は、青字に下線で見た目はハイパーリンクのようです。 テーブルのデータ型をハイパーリンクにしない限り、 フォームのコントロールをクリックしてサイトを開くことはできないのでしょうか? URL列を主キーにしたいので、ハイパーリンク型は避けてました。

  • ACCESSのフォーム内のテキストボックスのコントロールソース

    ACECESSでフォームを作り、テキストボックスを作成します。次に、そのテキストボックスへテーブルAのデータBを割り当てたとします。このとき、このテキストボックスに、テーブルAのデータBが割り当てられている事を確実に知る方法はありますでしょうか。 このテキストボックスのプロパティのコントロールソースを参照すると、データBが表示されますが、テーブルAの情報が表示されません。自分で作成したフォームについてはそれでも良いのですが、今回他の人が作成したフォームを見る必要があり、どのテーブルのどデータを割り当てているかを確実に知りたいのですが、その方法をご存じでしたら教えて下さい。

  • VB2005 コントロールの背景を透過

    フォームにバックグラウンドイメージを設定しているのですが その上にグループボックスやラベルを貼り付けたら、フォームのイメージが隠れてしまいます。 VB6はコントロールに背景を透過にするプロパティがあったので探してみたのですが、見当たりません。 おそらくVB2005でも簡単に透過設定できると思うのですが… グループボックスとラベルを透過に設定する簡単な方法はありますでしょうか? (コントロールの継承になってくる?) また、これはおそらく無理だと思うのですが ピクチャーボックスで表示されている画像の透過部分にも フォームの背景イメージを表示させる、ということは可能でしょうか? よろしくお願い致します。

  • VBAのコントロールについて

    EXCEL VBAでテキストボックスやラベル等の文字表示位置 で、横方向の右、真中、左はプロパティで設定できますが、 縦方向はどのようにすれば出来るのでしょうか。

  • Access VBA コントロール 削除

    Access の VBA にて、フォームに設置しているラベルやテキストボックスといったコントロールを削除するコードを作成したいのですが、どのように記述すればよろしいでしょうか?

専門家に質問してみよう