Hej Om Du kör koden ifrån Word-dokumentet så kan Du exempelvis lägga till texter med:Presentera resultat från SQL-sökning i Word
Jag är absolut nybörjare på SQL. Relativ nybörjare på VBA. Jag jobbar egentligen inte med att utveckla sådana här saker, men har en tjänst där jag har fria händer att utveckla vår interna administration. Och då har jag haft användning av båda dessa.
Jag lärde mig igår hur jag via VBA hämtar data från vår SQL-databas. Men detta var till Excel.. Jag har ett stort behov av att kunna presentera resultatet av en SQL-fråga i ett textfält i Word. Jag har sökt på nätet men de få svar som finns blir direkt för avancerade. Jag begriper helt enkelt inte. Jag hoppas att det här ska finnas en vänlig själ som kan förklara för en som inte begriper. :)
Koden jag har so far:
<code>Sub GetDataTest()
Dim objMyConn As ADODB.Connection
Dim objMyRecordset As ADODB.Recordset
Set objMyConn = New ADODB.Connection
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=myServer;Initial Catalog=myDB;User ID=myID;Password=myPW;"
objMyConn.Open
Set objMyRecordset = New ADODB.Recordset
objMyRecordset.ActiveConnection = objMyConn
objMyRecordset.Source = "SELECT [First Name] FROM EmployessTable WHERE [Employee]='10000'"
objMyRecordset.Open
' Here´s where I´m lost....
ActiveSheet.Range("A1").CopyFromRecordset objMyRecordset
objMyRecordset.Close
objMyConn.Close
Set objMyConn = Nothing
Set objMyRecordset = Nothing
End Sub</code>
Jobbar mot Office 2007, Windows 7.
Otroligt tacksam för svar
/ChristianSv: Presentera resultat från SQL-sökning i Word
Selection.Text = "Hello world!" & Chr(13)
Med andra ord loopa igenom ditt recordset och sedan skriva ut de fält Du vill med ovanstående snutt.
Do until objMyRecordset.EOF=true
Selection.Text=objMyRecordset("First Name") & chr(13)
objMyRecordset.movenext
Loop
..eller nått.. ;)
------------------------
Nedanstående klippt från VBA-hjälpen som finns om Du installerat den:
Referencing DAO
Before you can use DAO, you must establish a reference to the DAO object library. Use the following steps to establish a reference to the DAO object library.
Switch to the Microsoft Visual Basic Editor.
On the Tools menu, click References.
In the Available References box, select Microsoft DAO 3.6 Object Library.
The following example opens the Northwind database and inserts the items from the Shippers table into the active document.
Sub UsingDAOWithWord()
Dim docNew As Document
Dim dbNorthwind As DAO.Database
Dim rdShippers As Recordset
Dim intRecords As Integer
Set docNew = Documents.Add
Set dbNorthwind = OpenDatabase _
(Name:="C:\Program Files\Microsoft Office\Office11\" _
& "Samples\Northwind.mdb")
Set rdShippers = dbNorthwind.OpenRecordset(Name:="Shippers")
For intRecords = 0 To rdShippers.RecordCount - 1
docNew.Content.InsertAfter Text:=rdShippers.Fields(1).Value
rdShippers.MoveNext
docNew.Content.InsertParagraphAfter
Next intRecords
rdShippers.Close
dbNorthwind.Close
End Sub