|
Tipp 0086
|
Rechtschreibprüfung mit Word
|
|
|
Autor/Einsender: Datum: |
|
Angie 10.05.2003 (Update) |
|
Entwicklungsumgebung: |
|
VB 5 |
|
|
In Microsoft Word gibt es eine gute Rechtschreibprüfung, die auch für eigene VB-Programme verwendet werden kann.
Zu diesem Zweck muss allerdings Word auf dem PC installiert sein.
|
|
|
Option Explicit
Private Const wdWindowStateMaximize As Long = 1
Private Const wdDoNotSaveChanges As Long = 0
Private Const wdGerman As Long = 1031
Private Const wdEnglishUS As Long = 1033
Private Sub Form_Initialize()
Text1.Text = "In Microsoft Word gibt es eine schöööne " & _
"Rechtschreibprüfung, die auch für eigene VB-" & _
"Programmme bennutzt werden kann." & _
vbCrLf & vbCrLf & _
"Allerdings geeht dies nicht, ohne Word zu staarten."
optDeutsch.Value = True
End Sub
Private Sub cmdCheckSpell_Click()
Dim wdAppl As Object
Dim wdDoc As Object
Dim wdPara As Object
Dim intParasCnt As Integer
Dim i As Integer
Dim strBuffer As String
Err.Clear
On Error GoTo err_WordAppl
Set wdAppl = CreateObject("Word.Application")
DoEvents
On Error GoTo 0
With wdAppl
.Application.Visible = True
.Application.Activate
.WindowState = wdWindowStateMaximize
Set wdDoc = .Documents.Add
End With
With wdDoc
.Range.Text = Text1.Text
.Range(0, 0).Select
If optDeutsch.Value = True Then
.Range.LanguageID = wdGerman
Else
.Range.LanguageID = wdEnglishUS
End If
DoEvents
.CheckSpelling
intParasCnt = .Paragraphs.Count
For i = 1 To intParasCnt
Set wdPara = .Range _
(Start:=.Paragraphs(i).Range.Start, _
End:=.Paragraphs(i).Range.End - 1)
strBuffer = strBuffer & wdPara & vbCrLf
Next i
Text1.Text = Left$(strBuffer, Len(strBuffer) - 2)
.Close SaveChanges:=wdDoNotSaveChanges
End With
Set wdDoc = Nothing
On Error Resume Next
wdAppl.Application.Quit
Set wdAppl = Nothing
Me.SetFocus
Exit Sub
err_WordAppl:
MsgBox "Konnte keine Verbindung zu Word herstellen !", _
vbOKOnly + vbCritical, Me.Caption
Exit Sub
End Sub
|
|
|
|
Um diesen Tipp ausführen zu können, muss Word auf dem Ziel-PC installiert sein.
|
Bei Late Binding wird zur Entwurfszeit kein Verweis auf die Objektbibliothek in das Projekt eingebunden.
Alle verwendeten Objekte werden mit dem Variablentyp Object definiert. Ggf. verwendete anwendungsspezifische Konstanten
müssen mit dem entsprechenden numerischen Äquivalent der Konstante ersetzt werden, könnten aber auch mit der Const-Anweisung
deklariert werden. Die Verwendung von Konstanten erleichtert das Dokumentieren und Modifizieren Ihrer Programme, und trägt auch zur besseren
Lesbarkeit des Codes bei.
|
|
Windows-Version |
95 |
|
|
98/SE |
|
|
ME |
|
|
NT |
|
|
2000 |
|
|
XP |
|
|
Vista |
|
|
Win
7 |
|
|
|
VB-Version |
VBA 5 |
|
|
VBA 6 |
|
|
VB 4/16 |
|
|
VB 4/32 |
|
|
VB 5 |
|
|
VB 6 |
|
|
|
|
Download (3,4 kB)
|
Downloads bisher: [ 1389 ]
|
|
|