none
INTERAÇÃO COM OFFICE DE QUALQUER VERSÃO RRS feed

  • Pergunta

  • Olá amigos, tudo bem?
    no meu sistema, VB.NET 2012 faço interação com aplicativos do OFFICE  ( Word, Excel e outlook)
    na minha maquina e em outras aqui no escritório usamos o office 2010 e tudo funciona bem. porem em maquinas com outras versões já não funciona.
    haveria alguma maneira do sistema funcionar independente da versão do office instalada na maquina?


    desde já agradeço

    Kleisson Maximiano de Oliveira Softmax soluçoes em Sistema

    quinta-feira, 3 de abril de 2014 11:54

Todas as Respostas

  • Depende da maneira que vc faz essa integraçao... Poderia nos dar mais detalhes.

    Se vc esta usando automaçao OLE, talvez este artigo possa ser util:

    http://support.microsoft.com/kb/292491/pt-br

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    quinta-feira, 3 de abril de 2014 12:17
    Moderador
  • Olá. Willian, obrigado pela atenção.

    segue código de como chamo o word.

    Imports Microsoft.Office.Interop  

     Dim OBJApp As Word.Application
    Dim OBJDoc As Word.Document
     
    private sub Inicia_Word      
    try   
    OBJApp = New Word.Application()
    OBJDoc = OBJApp.Documents.Open(Word_ARQ)

    ' aqui comandos  para interação com o documento...

            Catch ex As Exception
                OBJApp.ActiveDocument.Close(False)
                OBJApp.Quit()
                OBJApp = Nothing
                MsgBox(ex.Message)
            End Try
    end sub

      Private Sub SubstituiVariavel(ByVal Achar As String, ByVal Substituir As String)
            Try
                'procura a varivel e substitui o valor
                With OBJApp.Selection.Find

                    .Text = Achar.ToString
                    .Forward = True
                    .Format = False
                    .MatchCase = False
                    .MatchWholeWord = True
                    .MatchWildcards = False
                    .MatchSoundsLike = False
                    .MatchAllWordForms = False

                    If Len(Substituir) < 256 Then
                        .Replacement.Text = Substituir.ToString
                        .Execute(Replace:=Word.WdReplace.wdReplaceAll)
                    Else
                        While .Execute = True
                            OBJApp.Selection.Select()
                            System.Windows.Forms.Clipboard.SetDataObject(Substituir)
                            OBJApp.Selection.Paste()
                        End While
                    End If

                End With

            Catch ex As Exception
                MessageBox.Show("Erro ao substituir valores no word. " & ex.Message)
            End Try

        End Sub


    Kleisson Maximiano de Oliveira Softmax soluçoes em Sistema

    quinta-feira, 3 de abril de 2014 12:50