Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Access: Hur gör jag för att kopiera innhållet i ett Word document som ligger som

Postades av 2004-06-23 10:21:08 - Johan Svensson, i forum access, Tråden har 6 Kommentarer och lästs av 1266 personer

Det jag försöker göra är att öppna ett Word dokument som ligger som ett OLE objekt i ett fält i en query, kopiera texten och klistra in den i ett annat Word dokoment. Efter detta vill jag öppna nästa i nästa fält och kopiera in innhållet i och klistra in...o.s.v
Problemet är det att jag verkar få RAW data och inte texten!!

Kan någon hjälpa mig med detta ?


Nedan följer hittils kodat:

Option Compare Database

Dim appWord As Object
Dim docs As Word.Documents
Dim doc As Word.Document
___________________________________________________

Function FooBar()
On Error GoTo FooBar_Err

Dim db As DAO.Database, qdf As DAO.QueryDef, qref As DAO.recordset
Dim i As Long

'Get data from Access with an SQL query

Set db = CurrentDb

Set qref = db.OpenRecordset("SELECT [Testinstruction] As inst FROM T_Testcase WHERE [Testinstruction] IS NOT NULL")

'Open a new Word document

Call OpenDoc

'If the table is empty then jump out

If qref.EOF Then Exit Function

'Jump to the beginning of the document

doc.Content.MoveStart
With qref
Do Until .EOF

'Put the data from the SQL query in the Word document
'TODO: The Document shall be pasted as text not RAW data

doc.Content.MoveStart
doc.Path InsertAfter(qref![inst])

'Jump to next record

.MoveNext
i = i + 1
Loop
End With

MsgBox (i)

'Save and close the document
'TODO: Ask the user on where to save the data

doc.SaveAs ("y:\\test.doc")
Call CloseDoc

Exit Function


FooBar_exit:
Exit Function
FooBar_Err:
Resume FooBar_exit
End Function

_________________________________________________________________

Private Sub OpenDoc()
Dim docs As Word.Documents

Set appWord = CreateObject("Word.Application")
Set docs = appWord.Documents
docs.Add
Set doc = appWord.ActiveDocument
doc.Activate


ErrorHandlerExit:
Exit Sub
End Sub
________________________________________________________________

Private Sub CloseDoc()
Set doc = Nothing
appWord.Application.Quit
Set appWord = Nothing
End Sub


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligger

Postades av 2004-06-23 10:46:42 - Åsa Holmgren

Varför sparar du texterna i OLE-objekt och inte i textfält?


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligge

Postades av 2004-06-23 22:10:01 - Johan Svensson

Därför att dokument innehåller bilder etc...så dom måste hållas intakta.


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligger

Postades av 2004-06-24 12:28:06 - Andreas Hillqvist

Det enda sätt jag känner till är att databinda fältet till en OLE kontroll. Du kommer då åt Word dokumentet med:
<code>
Dim Doc as Word.Document
Set Doc = OLEKontrollNamn.Object
</code>


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligge

Postades av 2004-06-24 13:13:02 - Johan Svensson

Har du ett större kodexempel?


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligg

Postades av 2004-06-28 11:30:59 - Åsa Holmgren

Jag vet inget smidigt sätt att läsa innehållet i ett ActiveX-fält till en objektvariabel. Själv skulle jag nog lösa det så att jag sparade dokumenten i en nätverksmapp och sökvägen till dokumenten i databasen.

Åsa H


Svara

Sv: Access: Hur gör jag för att kopiera innhållet i ett Word document som ligg

Postades av 2004-06-30 10:43:50 - Andreas Hillqvist

Det krävs ingen mer kod.

* Skapa ett formulär
* Bind formuläret till tabellen
* Lägg till en "Bunden" OLE Kontroll
* Bind OLE kontrollen till OLE fältet

Har gjort ett exempel vilket sammanfogar word dokument från OLE fält i en tabell:
<code>
'**
'* Modul: Modul1
'**
Option Compare Database

Public Sub CreateDocument()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim fldData As DAO.Field

Dim Doc As Word.Document
Dim NewDoc As Word.Document

Dim frmConvert As Form_Formulär1
Set NewDoc = New Word.Document
NewDoc.Application.Visible = True

Set frmConvert = New Form_Formulär1

Set db = CurrentDb
Set rs = db.OpenRecordset("Documents", dbOpenForwardOnly)
Set fldData = rs("DocumentData")
Do Until rs.EOF
Set Doc = frmConvert.GetOLEObject(fldData.GetChunk(0, fldData.FieldSize))
Doc.Range.Copy
NewDoc.Application.Selection.Paste
rs.MoveNext
Loop


End Sub
</code>

<code>
'**
'* Form: Formulär1
'**

Public Function GetOLEObject(Data() As Byte)
Me.BundetOLE4.Value = Data()
Set GetOLEObject = Me.BundetOLE4.Object
End Function

</code>


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 770
27 960
271 761
404
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies