Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

legd1991

Não consegue encontrar a base de dados

Recommended Posts

legd1991

boas,

estou aqui com um problema, eu tenho o seguinte código:

Try
            Dim wdApp As New Microsoft.Office.Interop.Word.Application
            Dim wdDoc As New Microsoft.Office.Interop.Word.Document
            Dim strWorkingDocName As String
            Dim txt As String

            strWorkingDocName = My.Application.Info.DirectoryPath.ToString & "\Mod.UNI03 - Protocolo de estágio.doc"

            With wdApp
                .WindowState = Microsoft.Office.Interop.Word.WdWindowState.wdWindowStateMaximize
                .Visible = True
            End With
            With wdApp
                wdDoc = wdApp.Documents.Open(strWorkingDocName)
                txt = My.Application.Info.DirectoryPath.ToString & "\Univa.accdb"
                Dim sql As String = "SELECT A.*,Emp.*col.*, Cur.*, P.*, Est.* FROM (((((col INNER JOIN A ON col.aluno = A.N) INNER JOIN Cur ON A.curso = Cur.Cod) INNER JOIN P ON col.prof = P.Cod) INNER JOIN Emp ON col.emp = Emp.cod) INNER JOIN Est ON col.le = Est.le)"
                ' Dim sql As String = "SELECT A.*,emp.*,p.*,col.*,est.*,cur.* FROM (((((col INNER JOIN A ON col.aluno = A.N) INNER JOIN Emp ON col.emp = Emp.cod) INNER JOIN P ON col.prof = P.Cod) INNER JOIN Est ON A.curso = Est.curso AND col.le = Est.le) INNER JOIN Cur ON A.curso = Cur.Cod)"
                wdDoc.MailMerge.OpenDataSource(Name:=txt, SQLStatement:=sql)

            End With
            With wdDoc.ActiveWindow.View
                .Type = Microsoft.Office.Interop.Word.WdViewType.wdPrintView
                .Zoom.Percentage = 100

            End With
            wdApp = Nothing

        Catch ex As Exception
            MsgBox("Erro:" & ex.Message)
        End Try

mas ao executar o código dá erro a dizer que nao consegue encontrar a base de dados, mas ela está lá..

alguém sabe porque não me está a dar bem??

cumps

legd1991

Share this post


Link to post
Share on other sites
ribeiro55

Nunca trabalhei com essa namespace, Microsoft.Office.*, mas o seguinte não me parece correcto:

wdDoc.MailMerge.OpenDataSource(Name:=txt, SQLStatement:=sql)

Dá uma olhadela aos datatypes dos parametros. Não serão ambos string?

Experimenta:

wdDoc.MailMerge.OpenDataSource(txt, sql)


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
legd1991

Nunca trabalhei com essa namespace, Microsoft.Office.*, mas o seguinte não me parece correcto:

wdDoc.MailMerge.OpenDataSource(Name:=txt, SQLStatement:=sql)

Dá uma olhadela aos datatypes dos parametros. Não serão ambos string?

Experimenta:

wdDoc.MailMerge.OpenDataSource(txt, sql)

se fizer assim ao abrir o documento do word vai-me pedir qual a tabela que quero importar, e so me dixa importar um, mas eu queria importar todas para preencher o modelo correctamente

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.