Várias tarefas podem ser executadas com ASP, tais como criação de páginas web e geração do modelo. Desde que a Microsoft desenvolveu a linguagem de programação ASP.NET , é interoperável com outros produtos da Microsoft , como os programas Excel e Word . ASP não é difícil de configurar e usar, porque o motor do aplicativo faz tudo, de terminar o trabalho e processar o código para enviar o código para o browser do usuário para a execução. Instruções
1
Inicie o Microsoft Word e clique em " Arquivo" na barra de menu. Clique em " Salvar como " no menu drop-down. Quando a caixa de diálogo Salvar Como aparece, clique no botão " apontando para baixo seta preta " e escolha " Modelo de Documento (*. Dot) " a partir da lista drop-down como o formato de documento. Este modelo será carregado com vários componentes do Microsoft Word avançados, como gráficos e elementos de desenho , campos de mala direta , texto e campos de formulário caixa de seleção , um rodapé aninhada e códigos VBA dinâmicos.
2
Escolha " Vista a partir da barra de menu e selecione " Barras de ferramentas "no menu drop-down. no menu fly-out da barra de ferramentas , clique em " Formulários ", e em seguida, adicione um" campo de formulário de texto "para o seu documento.
clique com o botão direito sobre o " campo de formulário texto" que você criou e escolha "Propriedades" para obter as informações do marcador . Associar um nome no campo de marcadores para obter o valor do campo de mesclagem , você criará mais tarde. Defina o "Tipo" para texto normal. a saída deve ser [ ____ ] .
3
Escolha "Inserir" na barra de menu , selecione a categoria " Mala Direta " eo " MergeField " nome do campo. " . MERGEFIELD " Digite o nome que você designou para o seu campo de formulário texto marcador mais cedo após o texto a saída deve ser [ Bookmark name] Além disso, a entrada sucedendo código VBA para proteger seus campos MailMerge sejam excluídos em seu modelo por outros usuários . :
Sub Proteger ( )
'em
' Proteger Macro
'em
ActiveDocument.Protect wdAllowOnlyFormFields , Verdadeiro
End Sub
4
Insira o código a seguir para melhorar a sua funcionalidade documento com macros. Esta demonstração fornece seus usuários com muitos recursos avançados no banco de dados do lado do servidor , e também coletar e armazenar os valores de os campos do formulário que você criou para ser usado na função SendRequest :
Sub atualização pública ()
Dim yn Como VbMsgBoxResult
yn = MsgBox (" você quer atualizar o banco de dados com suas novas seleções beneficiários ? " , vbYesNo ," Atualização do banco de dados ? ")
Se yn = vbNo Então
Exit Sub End If
vals Dim (4) As Variant
Dim status As Integer
Se ActiveDocument.FormFields ( " chka " ) . CheckBox.Value = True Then
estado = 1
ElseIf ActiveDocument.FormFields ( " CHKB " ) . CheckBox.Value = True Then
Estado = 2
ElseIf ActiveDocument.FormFields ( " chkC " ) . CheckBox.Value = True Then
estado = 3
End If
vals (0) = " BeneficiaryStatus =" & Status
vals (1) = " primária1 = "& Trim ( ActiveDocument.FormFields ( " primária1 " ) . Resultado)
vals (2) =" Primary2 = "& Trim ( ActiveDocument.FormFields ( " Primary2 " ) . Resultado)
vals (3) = " Contingent1 =" & Trim ( ActiveDocument.FormFields ( " Contingent1 " ) . Resultado)
vals (4) = " Contingent2 =" & Trim ( ActiveDocument.FormFields ( " Contingent2 " ) . Resultado)
Dim URL As String Dim
reqname As String Dim
httpStatus As Integer
URL = " http://localhost/Demos/OfficeWriter /Postone /BeneficiarySelection.aspx "
reqname =" UpdateBeneficiaries "
On Error Resume Next
httpStatus = HotCellRequest.SendRequest (URL , reqname , vals )
If Err.Number < > 0 Then
MsgBox "Erro ao enviar pedido HotCell . Não foi possível entrar em contato página de atualização do banco de dados do servidor "& _
vbCrLf & " Detalhes: . "& Err.Description , _
vbCritical , " HotCell Request Failed "
Exit Sub
End If
On Error GoTo 0
Se httpStatus = 200 Então
MsgBox "Você tem submetido com sucesso suas seleções beneficiário. ", _ < br >
vbOKOnly , " HotCell atualização Sucedido "
Else
MsgBox " A atualização do banco de dados HotCell não teve êxito . A atualização do banco de dados do lado do servidor "& _
" página retornou um erro. O servidor retornou o código de status : "& httpStatus , _
vbCritical , " HotCell Update Error "
End If End Sub
5
. Insira o código abaixo para ativar a função de SendRequest no documento perto de enviar os valores do formulário via HTTP para a página ASP.NET Isso vai preencher o banco de dados com os campos do formulário que você criou , mantendo intactas todas as informações a partir do modelo de documento do Word :
Função Pública
SendRequest (URL As String , requestName As String , pares As Variant ) As Integer Dim
strReq As String Dim
oHTTP As Object
' --- O objeto XMLHTTP precisa de valores do formulário para ser enviado da seguinte forma:
" ---" nome1 = valor1 & nome2 = valor2 & name3 = value3 " , etc
' --- estamos formando um pedido desse formato aqui
strReq = Junte-se (pares , "&" )
' --- Use o objeto XMLHTTP para fazer a solicitação HTTP
On Error Resume Next
Set oHTTP = CreateObject (" Msxml2.XMLHTTP.3.0 " )
If Err.Number < > 0 Then
Err.Raise Err.Number , " HotCellRequest ", _
" não foi possível criar XMLHTTPdeobjeto que é exigido por HotCells . "
Função Exit
End If
On Error GoTo 0
On Error Resume Next
oHTTP.Open "POST" , URL , False
If Err.Number < > 0 Then
Err. Levante Err.Number , " HotCellRequest ", _
" HotCell não conseguiu conectar-se " & URL & "" & _ Err.Description
Exit Function
End If
On Error GoTo 0
' --- precisamos definir isso sempre que enviar dados de formulário
oHTTP.SetRequestHeader " Content-Type ", " application /x -www -form- urlencoded "
oHTTP.SetRequestHeader " x- SaHotCellRequest " , requestName
' --- Envie a solicitação
On Error Resume Next
oHTTP.Send CStr ( strReq )
If Err.Number < > 0 Then
Err.Raise Err.Number , " HotCellRequest ", _
" HotCell falhou ao enviar dados para " & URL & "" & _ Err.Description
Exit Function End If
On Error GoTo 0
SendRequest = oHTTP.Status
' --- Limpe
Set oHTTP = Nothing End Function