sagostinho 0 Posted November 25, 2019 Report Share Posted November 25, 2019 Boa Noite, Sou Novo no VBA e estou a tentar desenvolver uma macro que me faça o seguinte: tenho Vários dados em 5 colunas e o que pretendo fazer é um filtro pela coluna [E] e que adicione novo livro em csv com o nome do filtro, mas se o livro já existir então vai colar os dados de acordo a coluna [A]. ex:macro faz filtro pela coluna E, copia linha 1, 2 para um novo livro com o nome 100, se esse livro já existe, então vai copiar os dados e colar na ultima célula preenchida se não existir as datas 15/08/2019 ou 16/08/2019, se as datas existirem então substituir os dados. O que tenho até agora é a seguinte macro que encontrei na internet. se me pudessem ajudar agradecia imenso, obrigado. Sub DistributeRowsToNewWBS() Dim wbNew As Workbook Dim wsData As Worksheet Dim wsCrit As Worksheet Dim wsNew As Worksheet Dim rngCrit As Range Dim LastRow As Long Set wsData = Worksheets("Folha1") ' name of worksheet with the data Set wsCrit = Worksheets.Add LastRow = wsData.Range("e" & Rows.Count).End(xlUp).Row ' column H has the criteria wsData.Range("e1:e" & LastRow).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=wsCrit.Range("A1"), Unique:=True Set rngCrit = wsCrit.Range("A2") While rngCrit.Value <> "" Set wsNew = Worksheets.Add ' change E to reflect columns to copy wsData.Range("A1:E" & LastRow).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=rngCrit.Offset(-1).Resize(2), CopyToRange:=wsNew.Range("A1"), Unique:=True wsNew.Name = rngCrit wsNew.Copy Set wbNew = ActiveWorkbook ' saves new workbook in path of existing workbook wbNew.SaveAs ThisWorkbook.Path & "\" & rngCrit wbNew.Close SaveChanges:=True Application.DisplayAlerts = False wsNew.Delete rngCrit.EntireRow.Delete Set rngCrit = wsCrit.Range("A2") Wend wsCrit.Delete Application.DisplayAlerts = True End Sub https://ibb.co/nQgNqM1 Link to post Share on other sites
Afonso Mira 0 Posted December 16, 2019 Report Share Posted December 16, 2019 Boa tarde @sagostinho. Poderia explicar como iria ser feito esse filtro? Seria uma entrada automática (Que iria buscar a outro ficheiro), ou seria uma entrada manual (por exemplo uma caixa de input onde seria inserido o valor a ser filtrado)- Obrigado e aguardo respostas. Cumps, Afonso Mira Afonso Mira 😃 Estagiando por aqui: Kemet Electronics Portugal, S.A. Link to post Share on other sites
sagostinho 0 Posted December 22, 2019 Author Report Share Posted December 22, 2019 Boa noite Afonso, Os dados são colados por mim nessa folha, e depois carrego num botão e corro a macro. Obrigado Link to post Share on other sites
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now