Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   StrConv (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/2444-strconv.html)

thanosgr 01-04-13 08:22

StrConv
 
Καλημέρα χρησιμοποιώ την Funciton Strconv

StrConv(Nz(Me!Service, ""), vbProperCase

Πχ ΤΟΜΕΑΣ γίνετε Τομέασ σε export που το κάνω σε Word Μορφή.

Εντός της Access δουλεύει μια χαρά..(το τσεκαρα sto immediate window)

Υπάρχει τρόπος διόρθωσης? Χρησιμοποιώ Bookmark.

Ευχαριστώ
Θάνος

Tasos 01-04-13 20:47

Καλησπέρα!
Θάνο, ούτε η 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

Καλή συνέχεια!

Τάσος

thanosgr 02-04-13 09:13

Ευχαριστώ Τάσο θα το δοκιμάσω και θα σας πω


Η ώρα είναι 14:29.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2