Página 1 de 1

Copiar de um arquivo para outro

Enviado: 28 Mar 2019 às 10:46
por Mally
Bom dia, fiz uma macro para copiar dados de do arquivo [x] para o [y]. Mas ele exige que o outro arquivo também esteja aberto (não sei fazer diferente). Então, queria saber uma forma de verificar se o arquivo [y] está aberto para interromper a macro caso não esteja.


Aqui a macro que estou usando:
' inserir aqui um codigo para verificar se o outro arquivo está aberto e caso não esteja > msgbox "Abra o arquivo y"> exitsub

cCount = DARS_Sistema.Range("P7").Value

Do While cCount <= DARS_Sistema.Range("P8").Value

DARS_Interface.Range("A1") = cCount
Call DARS_Report
cFolder = DARS_Sistema.Range("P4")
cSheet = DARS_Sistema.Range("P3")

Windows(cFolder).Activate
Sheets(cSheet).Range("A12").PasteSpecial Paste:=xlPasteValues
cCount = cCount + 1

Loop

Re: Copiar de um arquivo para outro

Enviado: 29 Mar 2019 às 09:03
por Mally
Resolvido:

Encontrei alguns exemplos na internet, mas como eram meio "complexos" demais pra algo que parecia ser simples, tive uma ideia diferente. Não sei se tem algo melhor, mas atendeu as minhas necessidades:
cTest = 0

For Each wb In Application.Workbooks

If wb.Name = "nome do arquivo" Then
cTest = 1
End If

Next wb

If cTest = 0 Then
Workbooks.Open ("endereço do arquivo")
End If
Assim ele verifica se o arquivo está aberto e caso não esteja, ele abre pra mim.
No meu caso, substitui "nome do arquivo" e "endereço do arquivo" por variáveis, já que isso muda de acordo com o que eu escolher na planilha.