Ir para conteúdo
Fórum Script Brasil
  • 0

Workbooks.open não funciona, nem se gravado com macro.


LucJonny

Pergunta

Primeira postagem :blush:

Então, estou montando uma planilha que precisa, quando requisitado, abrir outro arquivo do excel, gravar os dados lá, salvar e fechar.

Mas o comando workbooks.open não funciona, nem quando eu apertei para gravar o macro e usei a linha de código que o próprio excel criou...

Mas o arquivo que quero abrir está em rede, será que isso influencia? Eu tentei usando o comando create object e depois abrir o arquivo, mas nem assim...

Obs.: Os dois arquivos estão na mesma pasta, mas em rede.

Eis o código que eu tentei, gravado pelo macro:

ChDir "\\Eliane\meus documentos\ALMOXARIFADO\Projetos VBA"

Workbooks.Open Filename:="\\Eliane\meus documentos\ALMOXARIFADO\Projetos VBA\Mercadorias.xlsm"

E esse outro código eu usei baseado em um tópico que achei no fórum mesmo.

Dim WApp As Object

Set WApp = CreateObject("Excel.Application")

ChDir ("\\eliane\meus documentos\almoxarifado\projetos vba")

WApp.documents.Open ("Mercadorias.xlsm")

WApp.Visible = True

Só que no tópico era word.application, eu mudei pra excel pra tentar e não consegui ._.

Alguém sabe qual poderia ser o problema?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

O nome do arquivo ainda é o mesmo, inclusive pensando nisso eu cheguei a dar control c control v no nome hahah...

O diretório também não mudou...

Rodei um teste agora pouco, criei outros dois arquivos, Macro1.xlsm e Macro2.xlsm, e neles o comando funciona.

Dentro do Macro1.xlsm eu usei workbooks.open("Macro2.xlsm") e com apenas esse comando já abriu sem problemas...

Esse é o começo do macro, até onde o macro pára de funcionar...

Dim fornecedor, code, descr, vendor, cliente, data As String

Dim item, qtd, pedido, cont, linha As Integer

Dim caminho, inicio, fim As Range

Dim aberto As Workbook

Dim planilha As Worksheet

linha = 1

cont = 1

Set caminho = Cells.Find("Item")

Application.ScreenUpdating = False

fornecedor = UCase(Trim(Mid(Cells.Find("Fornecedor:"), 12)))

pedido = Val(Trim(Mid(Cells.Find("Pedido:"), 8)))

data = Trim(Mid(Cells.Find("Data:"), 6))

Do Until caminho.Offset(cont, 0).Value = ""

With caminho

item = Val(Trim(.Offset(cont, 0)))

qtd = Val(Trim(.Offset(cont, 1)))

code = UCase(Trim(.Offset(cont, 2)))

descr = UCase(Trim(.Offset(cont, 3)))

cliente = UCase(Trim(.Offset(cont, 4)))

vendor = UCase(Trim(.Offset(cont, 5)))

End With

On Error Resume Next

Set aberto = Workbooks("Mercadorias.xlsm")

On Error GoTo 0

If aberto Is Nothing Then 'planilha fechada

Workbooks.Open ("Mercadorias.xlsm")

Exit Sub

End If

Workbooks("Mercadorias.xlsm").Activate

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...