01-04-13, 21:47
|
| Διαχειριστής Όνομα: Τάσος Φιλοξενιδης Έκδοση λογισμικού Office: Ms-Office 365 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική | | Εγγραφή: 21-10-2009
Μηνύματα: 2.011
| |
Καλησπέρα!
Θάνο, ούτε η StrConv() αλλά ούτε και το Word (μέσω αυτοματισμού) υποστηρίζουν τον γραμματικό κανόνα του τελικού σίγμα.
Δεν κατάλαβα όμως πως θα μπουν οι τόνοι μετά τη μετατροπή των κεφαλαίων.
Αυτό όμως είναι δικό σου θέμα.
Ο παρακάτω κώδικας παίρνει τις τιμές των πεδίων της φόρμας και τις στέλνει σε αντίστοιχους σελιδοδείκτες σε υπάρχον έγγραφο Word: Κώδικας: Option Compare Database
Option Explicit
Private Sub cmdExportDataToWord_Click()
Dim wd As Object
Dim oDoc As Object
Set wd = CreateObject("Word.Application")
Set oDoc = wd.Documents.Open("E:\Desktop\Test.docx") ' Προσάρμοσε τη διαδρομή του αρχείου
wd.Visible = True
SetBokkmarkRangeText oDoc, "Text1", Nz(Me.Service, "")
' SetBokkmarkRangeText oDoc, "Text2", Nz(Me.άλλο_πεδίο, "")
' SetBokkmarkRangeText oDoc, "Text3", Nz(Me.άλλο_πεδίο, "")
AppActivate oDoc.Name
Set oDoc = Nothing
Set wd = Nothing
End Sub
Function SetBokkmarkRangeText(oDoc As Object, BookkmarkName As String, StrText)
Dim oRange As Object
Dim strWord As String
Dim i As Integer
If oDoc.Bookmarks.Exists(BookkmarkName) Then
Set oRange = oDoc.Bookmarks(BookkmarkName).Range
oRange.Text = StrText
oRange.Case = 2
For i = 1 To oRange.Words.Count
strWord = Trim(oRange.Words.Item(i).Text)
If Right(strWord, 1) = ChrW(963) Then
oRange.Words.Item(i).Text = Left(strWord, Len(strWord) - 1) & ChrW(962) & Chr(32)
End If
Next
End If
End Function
Καλή συνέχεια!
Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |