Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Spustite program Microsoft Word a kliknite na " Súbor " z menu . Kliknite na tlačidlo " Uložiť ako " z rozbaľovacej ponuke . Keď Uložiť ako dialógové okno sa objaví , kliknite na " čiernu dole smerujúce šípku " a vyberte " Šablóna dokumentu ( * . Dot ) " z rozbaľovacieho zoznamu ako formát dokumentu . Táto šablóna bude naložené s radom pokročilých komponentov aplikácie Microsoft Word , ako sú grafiky a kreslenie prvkov , pole hromadnej korešpondencie , textov a check - box poliach formulára , vnorené zápätie a dynamické VBA kódy .
2
Zvoľte " Pohľad z menu a vyberte " Panely nástrojov " z drop - down menu . Vo fly - out menu paneli nástrojov, kliknite na " formuláre " a potom pridať " textové pole formulára " do dokumentu .
Kliknite pravým tlačidlom myši na " textové pole formulára " , ktorý ste vytvorili , a vyberte " Vlastnosti " na získanie informácií o zálo ¾ ke . Priraďte názov do poľa Záložky získať hodnotu poľa hromadnej korešpondencie budete vytvárať neskôr . Nastavte " Typ " na bežný text . Výstup by mal byť [ ____ ] .
3
zvoľte " Vložiť " z menu , vyberte " Hromadná korešpondencia " kategórii a " neprázdne " názov poľa . " . MERGEFIELD " Zadajte meno , určený do textové pole formulára záložka skôr po textového výstupu by mala byť [ Názov Záložky ] Tiež vstup nasledovať kód VBA chrániť vaše mailmerge polia pred zmazaním v šablóne inými užívateľmi . :
Sub Protect ( )
"
" Chrániť Makro klipart
' klipart
ActiveDocument.Protect wdAllowOnlyFormFields , Pravda
End Sub
4
Vložte nasledujúci kód do zvýšenia svojej funkčnosti dokumentu s makrami . Toto demo poskytuje svojim užívateľom s mnohými pokročilými funkciami na strane servera databázy , a to aj zhromažďovanie a ukladanie hodnôt z pole formulára , ktoré ste vytvorili pre použitie vo funkcii SendRequest :
Public Sub aktualizovať ( )
Dim yn Ako VbMsgBoxResult
yn = MsgBox ( " Chcete aktualizovať databázy s novými príjemcami výbery ? " , vbYesNo , " Aktualizácia databázy ? " )
Ak Yn = vbNo Potom
Exit Sub
End If
Dim Vals ( 4 ) As Variant
Dim Status As Integer
ActiveDocument.FormFields ( " chkA " ) . CheckBox.Value = True Then
Status = 1
elseif ActiveDocument.FormFields ( " chkB " ) . CheckBox.Value = True Then
Status = 2
ElseIf ActiveDocument.FormFields ( " chkC " ) . CheckBox.Value = true Then
Status = 3
End If
Vals ( 0 ) = " BeneficiaryStatus = " & Status
Vals ( 1 ) = " Primary1 = " & Trim ( ActiveDocument.FormFields ( " Primary1 " ) . výsledok ) Spojené
Vals ( 2 ) = " Primary2 = " & Trim ( ActiveDocument.FormFields ( " Primary2 " ) . výsledok )
Vals ( 3 ) = " Contingent1 = " & Trim ( ActiveDocument.FormFields ( " Contingent1 " ) . výsledok ) Spojené
Vals ( 4 ) = " Contingent2 = " & Trim ( ActiveDocument.FormFields ( " Contingent2 " ) . výsledok )
Dim URL As String Dim
reqname As String Dim
httpStatus As Integer
URL = " http://localhost/Demos/OfficeWriter /Poston /BeneficiarySelection.aspx "
reqname = " UpdateBeneficiaries "
On Error Resume Next
httpStatus = HotCellRequest.SendRequest ( URL , reqname , Vals )
Ak err.number < > 0 Then
MsgBox " odosielanie HotCell žiadosti k chybe . Nedá kontaktovať server databázové aktualizácia stránky " & _
vbCrLf & " Podrobnosti : . " A Err.Description , _
vbCritical , " HotCell požiadavka sa nepodaril "
Exit Sub
End If
On Error GoTo 0
Ak httpStatus = 200 Potom
MsgBox " ste úspešne odoslaný svoje príjemcom výber . " , _
vbOKOnly , " Nástupca HotCell Update "
Else
MsgBox " HotCell aktualizácia databázy nebola úspešná . Stránka server - side aktualizácie databázy " & _
" vrátil chybu . Server vrátil stavový kód " a httpStatus , _
vbCritical , " HotCell Aktualizácia Chyba "
End If
End Sub
5
. Vstup pod kód povoliť funkciu SendRequest na dokumente blízko k odoslaniu hodnôt formulára cez HTTP na stránku ASP.NET To bude naplniť databázu s polí formulára , ktoré ste vytvorili pri zachovaní všetky informácie neporušený zo šablóny dokumentu programu Word :
Public Function SendRequest ( URL As String , requestname As String , pary As Variant ) As Integer
Dim strReq As String Dim
oHTTP As Object
" --- XMLHTTP objekt potrebuje hodnoty formulára , ktorý bude odoslaný v tejto podobe :
" --- " name1 = hodnota1 & meno2 = value2 & meno3 = value3 " , atď
" --- sme tvoriace žiadosť tohto formátu tu
strReq = join ( pary , " & " )
" --- použite objekt XMLHTTP urobiť požiadavke HTTP
On Error resume Next klipart
Set oHTTP = CreateObject ( " Msxml2.XMLHTTP.3.0 " )
Ak err.number < > 0 Then
Err.Raise err.number , " HotCellRequest " , _
" Nemôžem vytvoriť XMLHTTP objekt , ktorý je vyžadovaný HotCells . "
Exit Function
End If
On Error GoTo 0
On Error Resume Next klipart
oHTTP.Open " POST " , URL False
Ak err.number < > 0 Then
Err . Zdvihnite err.number , " HotCellRequest " , _
" nepodarilo HotCell sa pripojiť k " & URL & " " & _
Err.Description
Exit Function
End If
On Error GoTo 0
" --- Musíme nastaviť to kedykoľvek predložiť údaje formulára
oHTTP.SetRequestHeader " Content - Type " , " application /x - www - form - urlencoded "
oHTTP.SetRequestHeader " x - SaHotCellRequest " , requestname
" --- Odoslať požiadavku
On Error Resume Next
oHTTP.Send CStr ( strReq )
Ak err.number < > 0 Then
Err.Raise err.number , " HotCellRequest " , _
" HotCell zlyhal pri odosielaní dát na " & URL & " " & _
Err.Description
Exit Function
End If
On Error GoTo 0
SendRequest = oHTTP.Status
" --- Vyčistiť klipart
Set oHTTP = Nothing
End Function