Hej! Jag håller också på med det. Och har inte heller lyckats.koppla en accessdatabas till en combobox i word
Skulle vilja ha lite hjälp med en koppling mellan access och word.
Har skapat en brevmall i word med dialogrutor. Skulle vilja veta hur man kan koppla en combobox till en accessdatabas, där ett adressregister finns. Allt är skrivet i VBA. Finns det någon vänlig själ som kan hjälpa mig?
Har hittat en kod men får den inte att fungera:
Call FillList(dbase, "select personno, " &_
"personname from tblperson order by " & _
"personname;", lstperson)
Sub FillList (theDB As Database, theSQL As _
String, TheList As Control)
On Error Resume Next
TheList.Clear
Call FillListAp(theDB As Database, theSQL as _
String, TheList As Control)
On Error Resume Next
Dim TheSet As RecordSet
Dim inList As String
Dim I As Integer
Set theSet = theDBF.OpenRecordSet(theSQL), _
dbOpenSnapShot)
While Not theSet.EOF
For I = 1 To theSet.Fields.Count - 1
If I = 1 Then
If IsNull(theSet.Fields(I)) Then
inList = "Null"
Else
inList = theSet.Fields(I)
End If
Else
If IsNull(theSet.Fields(I)) Then
inList = inList & Chr(9) & "Null"
Else
inList = inList & Chr(9) & _
theSet.Fields(I)
End If
End If
Next I
TheList.Additem inList
TheList.ItemData(TheList.NewIndex) = _
theSet.Fields(0)
theSet.MoveNext
Wend
theSet.Close
End Sub
Vad är det för fel jag gör?
//AnnaSv: koppla en accessdatabas till en combobox i word
Det jag har är två tabeller i access med koppling mellan Företagsadress.ID och Kontaktperson.Företagsadress
Så här ser koden ut
-------------------------------------------------------------------------------------------------
Public Sub AdresskoppladFrm()
Dim Conn As New Connection
Dim rsAdress As New Recordset
Dim SQL As String
Dim sDBPath As String
Dim sConnection As String
Dim objNewDoc As Document
Dim sOutput As String
sDBPath = "M:\Mikaels\VSS\VBA-KODER mm VB1\05 öppna access från word\Adressregister.mdb"
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Persist Security Info=False;" & _
"Data Source=" & sDBPath
Conn.Open sConnection
SQL = "SELECT Företagsadress.*, Kontaktperson.Kontaktperson, Kontaktperson.Direkttelefon, Kontaktperson.E-postadress, Kontaktperson.Direktfaxnummer " & _
"FROM Kontaktperson INNER JOIN Företagsadress ON " & _
"Kontaktperson.Företagsadress = Företagsadress.[ID]"
rsAdress.Open SQL, Conn, adOpenStatic, adLockReadOnly
Do While Not rsAdress.EOF
sOutput = sOutput & rsAdress("Företagsadress.Företagsnamn") & vbTab _
& rsAdress("Postadress") & vbTab & rsAdress("Besöksadress") _
& vbTab & rsAdress("Postnummer") & vbTab _
& rsAdress("Postort") & rsAdress("Växelnummer") & vbTab _
& vbCrLf
rsAdress.MoveNext
Loop
Set objNewDoc = Documents.Add
objNewDoc.Range.Text = sOutput
End Sub
--------------------------------------------------------------------------------------------------
Problemet jag har är nartuligtvis att strängen för SQL inte fungerar varnings meddelandet lyder "Det har inte angets något vädre för en eller flera nödvändiga parametrar"
Kan jag bara få SQL strängen till att fungera så kan jag sedan dela upp den till olika comboboxar.
Så om du har något tips till mig så kanske vi kan fixa det..........?
Mvh Mikael