Hej! Testa: Funkar inte! Såhär borde det nog vara (som Andreas skrev, eller fungerade inte det?): Jag får upp ett felmeddelande som säger: Jag har löst problemet! Nu till del 2 i problemet! Såg nu vad felet var. Du hade angivit ditt vilkor på rätt argument: Tack Andreas! Jag har redan fått det att funka. Beroende på vad underformulär kontrollen har fått för mnamn skulle det kunna se ut så här. Låt os anta att kontrollen i vilket formulär frmreshistorik ligger i oxå heter frmreshistorik: Tack än en gång Andreas!Öppna ett annat formulär vid en bestämd post
Jag vill öppna ett formulär från ett annat formulär.
Det nya formuläret ska visa en post baserad på en markering i det gamla.
(Puh! Inte lätt att formulera sig!)
Jag har skapat en knapp i ursprungsformuläret. Koden för knappen är som följer:
Private Sub Kommandoknapp42_Click()
On Error GoTo Err_Kommandoknapp42_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "frmresbokning formulär guide"
DoCmd.OpenForm stDocName, [Bokningsnummer] = Forms![frmkundregister_reshistorik]![hist_Bokningsnummer]
Exit_Kommandoknapp42_Click:
Exit Sub
Err_Kommandoknapp42_Click:
MsgBox "Markera ett bokningsnummer först!"
Resume Exit_Kommandoknapp42_Click
End Sub
Problemet är att jag får ett meddelande om att posten inte hittas...
Vad gör jag för fel? Är det något som jag förbiser?
Tacksam för hjälp!
Lars LantzSv: Öppna ett annat formulär vid en bestämd post
<code>
Private Sub Kommandoknapp42_Click()
On Error GoTo Err_Kommandoknapp42_Click
DoCmd.OpenForm "frmresbokning formulär guide", "[Bokningsnummer] = " & [hist_Bokningsnummer]
Exit_Kommandoknapp42_Click:
Exit Sub
Err_Kommandoknapp42_Click:
MsgBox "Markera ett bokningsnummer först!"
Resume Exit_Kommandoknapp42_Click
End Sub
</code>Sv: Öppna ett annat formulär vid en bestämd post
Jag får ett meddelande som säger:
"Inkompatibla typer"
Ny kod:
Private Sub histBokningsnummer_DblClick(Cancel As Integer)
On Error GoTo Err_histBokningsnummer_DblClick
Dim stLinkCriteria As String
DoCmd.OpenForm "frmresbokning", [Bokningsnummer] = Forms![frmreshistorik]![histBokningsnummer]
Exit_histBokningsnummer_DblClick:
Exit Sub
Err_histBokningsnummer_DblClick:
MsgBox Err.Description
Resume Exit_histBokningsnummer_DblClick
End Sub
Med denna koden så öppnar formuläret som det ska men vid första posten och inte den jag dubbelklickade på...Sv: Öppna ett annat formulär vid en bestämd post
DoCmd.OpenForm "frmresbokning", "[Bokningsnummer] = " & Forms![frmreshistorik]![histBokningsnummer]
/JohanSv: Öppna ett annat formulär vid en bestämd post
Inkompatibla typer!Sv: Öppna ett annat formulär vid en bestämd post
Jag använder macrofunktionen i stället...
Då funkar det!
Tack för all hjälp!
/Lars LantzSv: Öppna ett annat formulär vid en bestämd post
Formuläret reshistorik ska vara ett underformulär.
Då funkar det inte.
Finns det någon som orkar hjälpa mig mer?
/LarsSv: Öppna ett annat formulär vid en bestämd post
<code>
Private Sub Kommandoknapp42_Click()
On Error GoTo Err_Kommandoknapp42_Click
If IsNull([hist_Bokningsnummer]) Then
Msgbox "Markera en bokning först!"
Else
DoCmd.OpenForm "frmresbokning",,,"[Bokningsnummer] = " & [hist_Bokningsnummer]
End If
Exit_Kommandoknapp42_Click:
Exit Sub
Err_Kommandoknapp42_Click:
MsgBox "Markera ett bokningsnummer först!"
Resume Exit_Kommandoknapp42_Click
End Sub
</code>Sv: Öppna ett annat formulär vid en bestämd post
Denna koden funkar om jag öppnar formuläret med knappen separat.
Nu ska jag emellertid använda detta formulär som ett underformulär. Knappen ska finnas på huvudformuläret.
Alltså frmreshistorik ska vara ett underformulär i frmkundregister.
Knappen ska finnas i frmkundregister.
frmresbokning ska öppnas när man trycker på knappen.
Posten (bokningsnumret) som markerades i frmreshistorik ska öppnas.
Har du någon lösning på det problemet är jag väldigt tacksam!
/Lars LantzSv: Öppna ett annat formulär vid en bestämd post
Jag löste det genom att köra dubbelklick på bokningsnumret
i stället för att klicka på knappen som skulle sitta i huvudformuläret.
/Lars LantzSv: Öppna ett annat formulär vid en bestämd post
<code>
Private Sub Kommandoknapp42_Click()
Dim Bokningsnummer as Variant
On Error GoTo Err_Kommandoknapp42_Click
Bokningsnummer = frmreshistorik.Form![hist_Bokningsnummer]
If IsNull(Bokningsnummer) Then
Msgbox "Markera en bokning först!"
Else
DoCmd.OpenForm "frmresbokning",,,"[Bokningsnummer] = " & Bokningsnummer
End If
Exit_Kommandoknapp42_Click:
Exit Sub
Err_Kommandoknapp42_Click:
MsgBox "Markera ett bokningsnummer först!"
Resume Exit_Kommandoknapp42_Click
End Sub
</code>Sv: Öppna ett annat formulär vid en bestämd post
Ditt senaste förslag funkar alldeles utmärkt.
/Lars Lantz