jag har hittat följande script som gör at man kan göra en stavningskontroll med hjälp av clientens msword applikation.
function SpellChecker(TextValue)
Dim objWordobject
Dim objDocobject
Dim strReturnValue
'Create a new instance of word Application
Set objWordobject = CreateObject("word.Application")
objWordobject.WindowState = 2
objWordobject.Visible = True
'Create a new instance of Document
Set objDocobject = objWordobject.Documents.Add( , , 1, True)
objDocobject.Content=TextValue
objDocobject.CheckSpelling
'Return spell check completed text data
strReturnValue = objDocobject.Content
'Close Word Document
objDocobject.Close False
'Set Document To nothing
Set objDocobject = Nothing
'Quit Word
objWordobject.Application.Quit True
'Set word object To nothing
Set objWordobject= Nothing
'Return text
SpellChecker=strReturnValue
End function
Detta fungerar utmärkt (så länge rätt säkerhets inställningar om unsafe activeX object är gjorda i internet explorer).
Men jag skulle vilja kunna skicka in html kod till denna funktionen och få tillbaka rättstavad html kod.
med den koden som jag har klistrat in längst upp så skickar man in rå texten som finns i ett formulär till msword och ber msword göra en spellcheck på den texten.
skickar jag då in text som innehåller html taggar, så tolkar msword inte html tagarna som html taggar, utan som vanlig text.
När msword då gör spellcheck på den texten blir det ju fel!
Men om man öppnar en msword och skriver lite text och sedan formaterar den (typ bold och size 20) så går det utmärkt att göra spell check på denna formaterade text inuti msword...
Men hur matar jag in min text inkl html taggar från mitt html formulär in i msword så att enbart texten blir spellcheckad?????
Någon som förstår??
objDocobject.Content=TextValue
står det nu, kan man ändra det till typ :
objDocobject.HTMLContent=TextValue
Yepp, jag förstår vad du menar. När jag rättstavade min HTML-guide hade jag ett fruktansvärt jobb med just htmk-kod.
Jag är inte säkér men jag tror inte att det går att blanda text och HTML utan att själv "miffla", det vill säga att ändra i Microsofts Words tolk....
Men, men, med asp b r u k a r jus allt vara möjligt...
Grejen är ju den att om du gör några formatieringar innuti msword och kör rättstavning, så kommer tesxten upp formaterat i rättsvaningsfönstret....
Så kan man bara komma på något sätt att skicka in texten till det nya dokumentet som html kod, så borde det fungera, men jag vet inte var jag skall leta efter vba help där jag kan leta om det går att skicka in html kod till word....
Någon som vet var det finns en MSWord vba helper med alla kommando man kan köra mot MSWord?
Fått det att lira nu men inte med att skicka HTML kod. Någon som fått det? Läst någonstans att man måste öppna rätt template me i så fall hur gör man det?
<script type="text/vbscript">
function SpellChecker(TextValue)
Dim objWordobject, objDocobject, strReturnValue
'Create a new instance of word Application
Set objWordobject = CreateObject("word.Application")
objWordobject.WindowState = 2
objWordobject.Visible = True
'Create a new instance of Document
Set objDocobject = objWordobject.Documents.Add
objDocobject.Content=TextValue
objDocobject.CheckSpelling
'Return spell check completed text data
strReturnValue = objDocobject.Content
'Close Word Document
objDocobject.Close False
'Set Document To nothing
Set objDocobject = Nothing
'Quit Word
objWordobject.Application.Quit True
'Set word object To nothing
Set objWordobject= Nothing
'Return text
SpellChecker=strReturnValue
End function
</script>
<input type="button" onclick="SpellChecker('Texstar attt sriva en menign')">
Men jag får det bara det att fungera om jag har scriptet lokalt. Så detta går man bet på lik förbannat.