2016-07-12 66 views
0

私はAccess 2016の非常に新しいユーザーです。フォームにはクエリが入力されており、テキストボックスの1つからハイパーリンクを作成します。このリンクには、ユーザがクリックする特定のレコードの作業日taskIDフィールドの合計値を含める必要があります。VBAにアクセス - 現在のレコードの値を取得する

私の問題は、現在のレコードの値を取得する方法を見つけることができないということです。これらの列の制御元は、フォームのレコードソースにデータを入力するクエリによって取得される値そのものです。次のコードは私が望むリンクを作成しますが、クリックする内容にかかわらず、いつでも同じ作業日taskIDの値を返します。現在のレコードを尊重する方法を見つけることができません。どんな助けでも大歓迎です!

Private Sub workday_Click() 

Dim link As String 
Dim workday as String 
Dim taskID as string 

workday = Format(Me!workday, "yyyy-mm-dd") 
taskID = Me!taskID 

link = "http://myurl.com/" & workday & "/" & taskID 
Application.FollowHyperlink (link) 

End Sub 

EDITは - これは説明役に立てば幸い少し良く

これを駆動するメインテーブルはworkID(PK)、Workdayの、TASKID、StatusID、DateLastUpdated、UpdatedByUserIDを持っています。フォームに使用されたクエリは、このテーブルのすべてを選択し、タスク、ステータス、およびユーザーのメタデータテーブルに参加します。同じ就業日の値と同じtaskIDを持つ複数のレコードがありますが、決して同じ2つのレコードの組み合わせはありません。フォームにはヘッダーにいくつかのフィルターがあり、下部にはデータシートがあります。データシートには、StatusIDを更新するために使用されるコンボボックスがあり、他のすべてのフィールドは無効にされ、ロックされています。私のハイパーリンクのクリックイベントは、勤務先フィールドにあり、適切なURLを作成するという点では機能しています。たとえば、「2016-07-12」「456」の行をクリックしても同じtaskIDと作業日の値が入力されただけです"、私はまだ" 2016-07-11 "を返します&" 123 "

ここでは、データがどのように見えるのかを簡単に示しています。私の目標は、ユーザーが就業日をクリックすると、クリックされた行の就業日とTaskIDの両方からなるハイパーリンクに移動することです。

Workday  TaskID 
2016-07-11 123 
2016-07-11 456 
2016-07-11 789 
2016-07-12 123 
2016-07-12 456 
2016-07-12 789 
2016-07-13 123 
2016-07-13 456 
2016-07-13 789 
+0

次のリンクの次のレコードに移動しますか?もしそうなら、 'workday'と' taskID'フィールドは境界を接してはいけません。あるいは、すべてのレコードまたは非常に多くのレコードが同じデータを共有していてもいけません。クエリの内容を投稿してください。 – Parfait

+0

レコードはデータシートにありますか?または連続的なフォーム? 「現在のレコード」を取得したら、何をクリックしていますか?あなたはスクリーンショットを送ることができますか? – dbmitch

+0

作業中の(手動で入力された)URLはどのように見えますか? – Gustav

答えて

0

は、私は実際にそれを解決すると思う - 問題は、ほぼすべてのフィールドがロックされ、無効になったことから、現在のレコードが技術的に私がクリックされた行ではなかったということでした。私はEnabled = YesをWorkday列に設定して、今度は期待どおりに動作しています。

関連する問題