Så här ändrar du anslutningen för ett Access-projekt programmässigt

Anteckning

Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.

Avancerat: Kräver expertkodning, interoperabilitet och fleranvändarfärdigheter.

Den här artikeln gäller endast för Microsoft Access-projekt (.adp).

Sammanfattning

I den här artikeln finns information om hur du programmässigt ändrar anslutningen till en ADP-fil (Microsoft Access Project).

Mer information

Det enklaste sättet att ändra en ADP-anslutning är att göra det manuellt. Du kan komma åt det aktuella projektets anslutningsegenskaper enligt följande i Access 2002 eller i Access 2003: klicka på Anslutning på Arkiv-menyn. I dialogrutan som visas finns alternativ för att bland annat ändra servernamn och säkerhetslägen.

Obs! I Access 2007 öppnar du fliken Anslutning i dialogrutan Datalänkegenskaper:

  1. Klicka på Microsoft Office och sedan på Access-alternativ.
  2. Klicka på Alla kommandon i listan Välj kommandon från på fliken Anpassa.
  3. Klicka Anslutning i den vänstra rutan, klicka på Lägg till och sedan på OK.
  4. Klicka Anslutning i verktygsfältet Snabbåtkomst.

Men ibland kanske du vill automatisera processen. Du kanske vill att användarna ska ansluta till en annan SQL-server för ett visst avsnitt i programmet eller så kanske du vill styra anslutningsprocessen vid start så att du kan leta efter fel och hantera dem i enlighet med detta, kanske genom att dirigera dem till en annan server.

I följande steg används en funktion som visar hur du ändrar den befintliga anslutningen för en ADP med hjälp av Access-objektmodellen. Funktionen returnerar True om det lyckas och Falskt om det inte lyckas.

  1. Starta Access och öppna sedan access-exempelprojektet NorthwindCS.adp.

  2. I Access 2002 eller Access 2003 klickar du på Moduler under Objekt i databasfönstret och klickar sedan på Nytt för att öppna en ny modul.

    I Access 2007 klickar du på nedåtpilen under Makro i gruppen Övrigt på fliken Skapa och klickar sedan på Modul.

  3. Lägg till följande kod i den nya modulen och spara sedan modulen:

Function ChangeADPConnection(strServerName As String, strDBName As _
   String, Optional strUN As String, Optional strPW As String) As Boolean
Dim strConnect As String
On Error GoTo EH:
Application.CurrentProject.CloseConnection
'The Provider, Data Source, and Initial Catalog arguments are required.
strConnect = "Provider=SQLOLEDB.1" & _
";Data Source=" & strServerName & _
";Initial Catalog=" & strDBName
If strUN <> "" Then
    strConnect = strConnect & ";user id=" & strUN
    If strPW <> "" Then
        strConnect = strConnect & ";password=" & strPW
    End If
Else  'Try to use integrated security if no username is supplied.
    strConnect = strConnect & ";integrated security=SSPI"
End If
Application.CurrentProject.OpenConnection strConnect
ChangeADPConnection = True
Exit Function
EH:
MsgBox Err.Number & ": " & Err.Description, vbCritical, "Connection Error"
ChangeADPConnection = False
End Function

  1. I Access 2002 eller Access 2003 klickar du på Formulär under Objekt i databasfönstret, klickar på Nytt och klickar sedan på OK för att öppna ett nytt formulär i designvyn.

    I Access 2007 klickar du Formulär på fliken Skapa.

  2. Lägg till en kommandoknapp i formuläret.

  3. Ställ in egenskapen VidKlickning för kommandoknappen till följande händelseprocedur:

Dim bCheckConnection As Boolean
   'You must specify the correct parameters for your following server.
   'username and password parameters are optional.
bCheckConnection=ChangeADPConnection("ServerName","DBName","UserName","PW")
MsgBox bCheckConnection
  1. Stäng Visual Basic miljö för att återgå till formuläret.

  2. Spara formuläret och växla sedan formuläret till formulärvyn.

  3. Klicka på kommandoknappen för att köra den underliggande koden.

    Du får ett meddelande om att True har angetts om du har angett rätt parametrar för en anslutning i steg 6.

    – ELLER –

    Om du inte har ange rätt parametrar visas felmeddelandet. När du klickar på OK till felmeddelandet visas meddelanderutan Med Falskt.