Liebes Forum,
ich habe ein Access-Formular mit 2 Feldern: eine ID und ein Link.
Ich möchte gerne in einem anderen Formular eine Befehlsschaltfläche generieren, mit der ich direkt den Link öffnen kann (verknüpft über die ID)
Bitte um Hilfe!
Danke schon im Voraus und liebe Grüße
quovado
Also ^^
dazu müsste ich wissen, auf was der Link zeigt… eine Datei, die geöffnet werden soll oder ein Hyperlink ins Internet oder so.
Grundsätzlich kannst Du aber auf die Schaltfläche im Ereignis ‚beim klicken‘ alles legen.
Beschreib mal bitte, wie der Link aussieht und für was die ID benötigt wird, dann sollte es kein Problem sein.
LG,
Burkhard
Foren und Formate…ich hasse das.
Tausche einfach die Punkte gegen 4 mal Space…grml…
Private Sub Befehl1_Click()
…Dim strLink As String
…'chek, ob Eingaben valide sind
…If IsNull(Forms(„Formular_mit_2_feldern“)!Feld_2_mit_link) Or _
…IsNull(Forms(„Formular_mit_2_feldern“)!Feld_1_mit_id) Then
…MsgBox „Eingabe in Feld Link und/oder ID fehlt“, vbCritical, „Eingabe fehlt“
…Exit Sub
…End If
…'Link zusammenbauen
…strLink = Forms(„Formular_mit_2_feldern“)!Feld_2_mit_link & _
…"?process_id=" & Forms(„Formular_mit_2_feldern“)!Feld_1_mit_id
…'Link asuführen
…Application.FollowHyperlink strLink, , True
End Sub
So ich hoffe, es hilft oder gibt zumindest einen Tip in die richtige Richtung.
So long,
Burkhard
Also…irgendwie sind meine Einträge heute nicht immer funktional oben fehlte :
ich habe grad noch etwas Zeit und spekuliere mal
- Du hast ein Formular (Name=Formular_mit_2_feldern) mit 2 Feldern (Feld_1_mit_id und Feld_2_mit_link)
- Du hast ein 2. Formular mit einer Schaltfläche (folge_link)
- Du nimmst aus dem 1. Formular die Werte und willst diese Daten per Browser ins I-Net schicken und die Seite öffnen
Nehmen wir also an, der Link muss so aussehen :
‚http://www.wer-weiss-was.de?display=17‘
dann nehmen wir aus dem Feld ‚Feld_2_mit_link‘ den Hauptlink ‚http://www.wer-weiss-was.de‘ und verknüpfen diesen mit der ID aus dem Feld ‚Feld_1_mit_id‘ ‚17‘
Ich würde also der Schaltfläche im 2. Formular unter der Eigenschaft ‚Beim klicken‘ folgenden code eintragen :
Private Sub Befehl1_Click()
…Dim strLink As String
…'chek, ob Eingaben valide sind
…If IsNull(Forms(„Formular_mit_2_feldern“)!Feld_2_mit_link) Or _
…IsNull(Forms(„Formular_mit_2_feldern“)!Feld_1_mit_id) Then
…MsgBox „Eingabe in Feld Link und/oder ID fehlt“, vbCritical, „Eingabe fehlt“
…Exit Sub
…End If
…'Link zusammenbauen
…strLink = Forms(„Formular_mit_2_feldern“)!Feld_2_mit_link & _
…"?display=" & Forms(„Formular_mit_2_feldern“)!Feld_1_mit_id
…'Link asuführen
…Application.FollowHyperlink strLink, , True
End Sub
So, ich hoffe, dieser Eintrag kommt jetzt richtig an und hilft Dir weiter
So long,
Burkhard
Sorry, kann dir leider nicht helfen…
Danke für die rasche Antwort - ich brauche die Lösung auch wirklich dringend.
1)der link zeigt auf eine Datei auf dem Server
2)die ID soll gleich sein mit der ID der Tabelle auf der das Formular aufbaut,auf dem ich die Schaltfläche haben möchte;
Ich habe eine Zwischenlösung, bei der ich das Formular mit dem Hyperlink öffne und dann den link verwende:
Private Sub Excel_Click()
If IsNull(Me.cmbProjekt_PC) Then
MsgBox „Sie müssen vorher ein Projekt auswählen!“, vbInformation, „Projekt wählen“
Me.cmbProjekt_PC.SetFocus
Exit Sub
End If
DoCmd.Minimize
DoCmd.OpenForm „frm_ControlExcel“, acNormal, , "P_id_FK = " & Me.cmbProjekt_PC
End Sub
aber ich müsste doch auch gleich den link öffnen können?
Danke und liebe Grüße - quovado
Hallo quovado,
Also…. Wenn ich die Hinweise richtig verstehe, willst Du eine Excel-Datei öffnen, die auf einem entfernten Server liegt… dafür gibt es das Protokoll ‚file’, also, wenn meine Annahme stimmt, kannst Du den Link wie folgt aufbauen:
file://serveradresse/datei
Funktioniert eigentlich genauso wie ein Hyperlink, nur eben das WINDOWS weiß, das es bei einer *.xls EXCEL zu nehmen hat.
Wenn Du die Serveradresse direkt ansprechen kannst, geht es noch sauberer mit
OpenDocument („DATEI“)
Wobei DATEI aus dem Dateinamen und dem gültigen Pfad zum Server bestehen muss.
Auf ein Neues,
Burkhard
Lieber Burkhard,
danke für deinen Tipp - ich glaube ich brauche aber eine komplexere Lösung.
Ich habe ja eine Tabelle mit vielen Links auf verschiedene Excel Sheets mit jeweils einer dazugehörigen ID. Die IDs kommen auch in meinem Formular vor - also brauche ich eine Lösung bei der meine Schaltfläche den jeweiligen Link öffnet zu der die ID des aktuellen Datensatzes im Formular gehört.
Ich hoffe, ich habe das halbwegs verständlich erklärt.
Danke schon mal im Voraus für deine Mühe und schöne Ostern.
quovado
Kann mir diesen Link nicht so ganz vorstellen.
Ein vorgefertigtes Makro kann man auch aus einem
anderen Formular aufrufen/ausführen.
Meine Prozedur schaut derzeit so aus:
Private Sub Excel_Click()
If IsNull(Me.cmbProjekt_PC) Then
MsgBox „Sie müssen vorher ein Projekt auswählen!“, vbInformation, „Projekt wählen“
Me.cmbProjekt_PC.SetFocus
Exit Sub
End If
DoCmd.Minimize
DoCmd.OpenForm „frm_ControlExcel“, acNormal, , "P_id_FK = " & Me.cmbProjekt_PC
End Sub
In dem Formular „frm_controlExcel“ gibt es pro „P_id_FK“ ein Feld mit dem Link - und den würde ich gerne direkt öffnen - ohne Umweg über Formular öffnen.
Danke schon im Voraus für die Hilfe - quovado
Kann mir diesen Link nicht so ganz vorstellen.
Ein vorgefertigtes Makro kann man auch aus einem
anderen Formular aufrufen/ausführen.