Fórum Abrir arquivo Excel pelo VBA do Word. #613502
11/12/2020
0
Código utilizado:
_________________________________________________________
Sub Abrir_Exel_ou_Não()
Dim RESPOSTA As Integer
Dim ANS As Integer
RESPOSTA = vbYesNo + vbQuestion + vbDefaultButton2
ANS = MsgBox("Deseja Acesso os Dados?", RESPOSTA, "Prosseguir")
If ANS = vbYes Then
Dim excel As Workbook.Activate
Set excel = Workbooks.Open("C:\Sistema_Certificados_Venda\Dados.xlsm")
End With
Else
End If
ActiveDocument.Save
Application.Quit
End Sub
_________________________________________________________
O código acima projeta uma caixa de diálogo com duas alternativas: Caso a resposta seja sim, deveria abrir o arquivo Excel mencionado "Dados.xlsm", salvar o documento word que está aberto e fechá-lo. E caso a resposta seja não, apenas salvará e fechará o Word que aberto.
OBS: esse código funciona sem a parte de abrir o arquivo, ou seja, ele salva e fechar o word que está aberto, porém, preciso de ter a opção de abrir o arquivo Excel também.

Vinícius
Curtir tópico
+ 0Posts
11/12/2020
Emerson Nascimento
veja se o trecho abaixo funciona:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | Dim RESPOSTA As Integer Dim ANS As Integer Dim oExcelApp As Excel.Application Dim oExcelWB As Excel.Workbook RESPOSTA = vbYesNo + vbQuestion + vbDefaultButton2 ANS = MsgBox( "Deseja Acesso os Dados?" , RESPOSTA, "Prosseguir" ) If ANS = vbYes Then Set oExcelApp = New Excel.Application ' cria uma instância do Excel If oExcelApp Is Nothing Then ' não foi possível instanciar o Excel MsgBox "Excel não está disponível!" , vbExclamation Else oExcelApp.Visible = True ' deixa o Excel visível Set oExcelWB = oExcelApp.Workbooks.Open( "C:\\Sistema_Certificados_Venda\\Dados.xlsm" ) End If End With Else End If ActiveDocument.Save Application.Quit |
Gostei + 0
11/12/2020
Vinícius
veja se o trecho abaixo funciona:
[code=vb]Dim RESPOSTA As Integer
Dim ANS As Integer
Dim oExcelApp As Excel.Application
Dim oExcelWB As Excel.Workbook
Mas o código não funcionou. Apresentou o mesmo erro na linha "Dim oExcelApp As excel.Application"
Gostei + 0
11/12/2020
Vinícius
Gostei + 0
12/12/2020
Emerson Nascimento
Depois de marcar a opção e confirmar a tela, as classes, métodos e propriedades do Excel estarão disponíveis do editor de código.
Daí você pode codificar usando o Excel.
Após configurar a biblioteca, testei esse código e funcionou.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | Sub Abrir_Exel_ou_Não() Dim RESPOSTA As Integer Dim ANS As Integer Dim oExcelApp As Excel.Application Dim oExcelWB As Excel.Workbook RESPOSTA = vbYesNo + vbQuestion + vbDefaultButton2 ANS = MsgBox( "Deseja Acesso os Dados?" , RESPOSTA, "Prosseguir" ) If ANS = vbYes Then Set oExcelApp = New Excel.Application ' cria uma instância do Excel If oExcelApp Is Nothing Then ' não foi possível instanciar o Excel MsgBox "Excel não está disponível!" , vbExclamation Else oExcelApp.Visible = True ' deixa o Excel visível Set oExcelWB = oExcelApp.Workbooks.Open( "C:\\\\Sistema_Certificados_Venda\\\\Dados.xlsm" ) ' abre a planilha End If Else End If ActiveDocument.Save Application.Quit End Sub |
Gostei + 0
13/12/2020
Vinícius
Gostei + 0
14/12/2020
Vinícius
Gostei + 0
14/12/2020
Emerson Nascimento
oExcelApp.WindowState = xlMaximized
Gostei + 0
15/12/2020
Vinícius
Adaptei aqui e deu certo. Ficou assim
oExcel.WindowState = xlMaximized
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)