Página 1 de 1

Tratar dados em uma planilha e depois apaga-la

Enviado: 16 Nov 2017 às 16:56
por LucasAndrey
Boa tarde pessoal.
Digamos que eu baixe uma planilha que se chama ‘teste’, quando eu for baixar a primeira vez ela vai vir como teste.xlsx, a segunda vez teste(1).xlsx e assim por diante.
À ideia é não ficar acumulando um monte de planilhas com o mesmo nome, já que terei que baixá-las toda semana uma vez.
Tem como toda vez que eu baixar, os dados dessa nova serem armazenados em uma principal e depois a planilha baixada ser excluída?
Tipo assim, baixei a minha teste.xls, na outra vez quando for baixar ela vai vir teste(1).xlsx, daí eu queria que os dados dessa fosse pra principal teste. xls e depois a teste(1).xlsx fosse apagada. Será que da pra fazer alguma coisa do tipo?
Não sei se deu pra entender. Desde já agradeço quem puder me dar uma luz kk

Tratar dados em uma planilha e depois apaga-la

Enviado: 17 Nov 2017 às 07:15
por wesleyribeiro123
Lucas Andrey
Bom dia,

Sim é totalmente possível desde que se utilize programações VBA e se respeite alguns critérios importantes para o bom funcionamento. São eles:
> Estes arquivos sempre virão com nomes padrões?
> Estes arquivos serão sempre salvos na mesma pasta?
> As informações contidas nos arquivos serão sempre na mesma estrutura? Ou seja, apenas será alimentada novas informações mas a estrutura da planilha sempre será mantida?

Montar algo pra vc sem estar em tua realidade é bastante complicado! Aconselho, caso ainda não tenha conhecimentos, estudar e aprofundar um pouco nestas programações VBA.

Tratar dados em uma planilha e depois apaga-la

Enviado: 21 Nov 2017 às 11:21
por LucasAndrey
Olá, então todas as respostas são "SIM".
Na verdade a duvida maior é em como copiar dados a partir de outro arquivo Excel com mesma formatação, pasta de origem sem que os arquivos estejam abertos.
Eu consegui algo semelhante, mas as duas planilhas precisam estar abertas para que o código funcione pois ele foi gerado a partir de uma gravação de uma macro.
Muito obrigado pela ajuda!!!

Re: Tratar dados em uma planilha e depois apaga-la

Enviado: 21 Nov 2017 às 11:47
por alexandrevba
Boa tarde!!

Favor adaptar de acordo com sua necessidade!
Código: Selecionar todos
Sub AleVBA_5818()
'Fonte: http://www.encodedna.com/excel/copy-data-from-closed-excel-workbook-without-opening.htm
'Fonte: https://www.rondebruin.nl/win/s9/win002.htm

    Dim wbName As String, wb As Workbook, ws As Worksheet
    Dim LR As Long, NR As Long
   
    txt = "C:\Users\Administrador\Downloads\teste.xlsx"
    If Dir(txt) = "" Then
        MsgBox txt & " não existe"
    Else
        Set wb = Workbooks.Open(txt)
        On Error Resume Next
        Set ws = wb.Sheets("Plan1")
       
        If Not ws Is Nothing Then
            LR = ws.Range("A" & Rows.Count).End(xlUp).Row
            NR = Plan1.Range("A" & Rows.Count).End(xlUp).Row + 1
            ws.Range("A2:A" & LR).Copy
            Plan1.Range("A" & NR).PasteSpecial xlPasteValues
            wb.Close
        Else
            MsgBox ws.Name & " não existe"
        End If
    Err.Clear
    End If
    On Error Resume Next
        Kill "C:\Users\Administrador\Downloads\teste.xlsx"
    On Error GoTo 0
End Sub
Att