Ir ao conteúdo
  • Cadastre-se

isabela queiroz

Membro Pleno
  • Posts

    101
  • Cadastrado em

  • Última visita

Tudo que isabela queiroz postou

  1. Olá, Estou desenvolvendo uma tabela para acompanhar as pontuações de somas de esforços ao longo de um determinado período de tempo. Este período inclui data, versão e os esforços correspondentes. Gostaria que a tabela se atualizasse automaticamente diariamente, levando em consideração as informações disponíveis. Por exemplo, se houver uma mudança na data, na soma dos esforços ou na versão, a tabela deverá ser atualizada. É importante ressaltar que a versão está associada à data de início e término do período. Este período é definido a cada 15 dias, o que significa que após o preenchimento da primeira data, a cada 15 dias teremos um novo período com uma nova versão (por exemplo, se começamos com a versão 123, a próxima será 124). A ideia é incluir um menu no topo que concentre essas informações e que seja atualizado diariamente, agregando os dados das tabelas abaixo.
  2. @Midori ficaria assim, correto? Sub removerInactive() Const Status1 As Integer = 4 Const Status2 As Integer = 9 Dim Tabela As Range Dim Lin As Long Set Tabela = ThisWorkbook.Sheets("Carga").[A2].CurrentRegion For Lin = Tabela.Rows.Count To 1 Step -1 If Tabela(Linha, Status1) = "inactive" _ And Tabela(Linha, Status2) <> "In Process - Qual" Then Tabela.Rows(Lin).EntireRow.Delete End If Next Lin
  3. @Midori Houveram algumas mudanças nas regras da tabela e precisava que todas linhas que tiverem "inactive" na coluna 4 sejam apagadas, com a execeção das linhas que tiverem "In Process - Qual" na coluna 9, teria como me ajudar? todos status abaixo, devem sumir a linha quando aparecer junto do "inactive" Cancelled End of Production Disqualified Hold apenas no caso do status "In Process - Qual" que é uma exeçaõ
  4. @Midori para eu definir em qual planilha vai ocorrer eu coloco Worksheets("Carga") em que parte do codigo?
  5. @Midori precisava que fosse um loop ate a ultima linha preenchida, porque dependen muito a quantida de de itens que vem. E teria a linha toda teria que ser removida
  6. Bom dia! tenho essa tabela aqui com alguns itens, precisava que toda vez que aparecesse um "inactive" na coluna 4 com "cancelled" na coluna 6, fosse apagado, mas somente se esses dois aparecer juntos na mesma linha, se for um inactive com um "deplete stock" na coluna 6, mantem. preciso que seja feito em VBA para adicionar no meu codigo.
  7. Boa Tarde! Preciso criar um Fluxo no Power Automate para suporte de uma area, que quando um forms for preenchido com a solicitação de ajuda, as infos serem adicionadas do forms sejam adicionadas em uma lista do sherepoint, e em seguida envie um email para os responsaveis da area avisando que existe uma nova solicitação e apos isso o responsavel verificar SE vai ser aprovado OU se vai mandar novamente para o solicitante da ajuda precisa enviar mais informações, assim quando o solicitante retornar (ou se não precisar enviar novamente para o solicitante) o fluxo retornar a resposta para ser finalizado, rejeitado ou pendente, e quando for finalmente finalizado enviar um email avisando para o solicitante e para a area de suporte que aquela solicitação foi encerrada, sera que isso é possível? ja tenho o Forms pronto com tudo que preciso e o List do SherePoint que vão os itens, ja fiz a conexao do SherePoint e do PowerAutomate mas como não conheço muito bem o PowerAutomate eu não sei quantas ações tem disponivel para usar.
  8. @Midori deu certinho agora, só tirei o + 1 daqui porque começou a pular a primiera celula da tabela depois do cabeçalho, muito obrigada!!
  9. @Midori Notei assim que postei, verifica o comentario acima, por favor
  10. @Midori Atualização: Consegui arrumar um erro que tinha encontrado mas era eu que tinha colocado em ordem errada, assim ta funcionando, poderia verificar se esta tudo certo com o codigo e não aparenta apresentar erros futuros? E eu notei que algumas das celulas da minha tabela original tem celulas brancas, ai o codigo acaba quando chega nela, sendo que é pra continuar para a proxima, como faço para ignorar as celulas vazias e continuar o codigo? Sub main () Dim Item As Range Set Item = ThisWorkbook.Sheets("Carga").Cells.Find( _ What:="Add item", LookIn:=xlValues, LookAt:=xlWhole) If Not Item Is Nothing Then Set Item = Item(2) While Item <> "" If Left(Item.Value, Len("245897-")) <> "245897-" Then Item = "245897-" & Item End If Set Item = Item(2) Wend End If End Sub
  11. Sub main () Dim Item As Range Set Item = ThisWorkbook.Sheets("Carga").Cells.Find( _ What:="Add item", LookIn:=xlValues, LookAt:=xlWhole) If Not Item Is Nothing Then Set Item = Item(2) While Item <> "" Item = "245897-" & Item Set Item = Item(2) Wend End If End Sub como adiciono a esse codigo uma função que se ja tiver o numero "245897-" na celula não precisa adicionar na frente do texto
  12. @Scofieldgynpor conta do For each estar "fora" do for inicio o codigo não ta passando por ele.. e quando testo só ele separado ele ignora o Next palavra e vai direto pro fim da sub
  13. @Scofieldgyn parece estar funcionando, mas como faço para alem de colocar que não foi encontrado pintar a celula ou a propria linha do item que não achou?
  14. @Scofieldgyn parece funcionar perfeitamente, mas tem como passar para codigo VBA procurando pelo "nome" e não pela celula/coluna? ex. eu acho que para fazer o iferror ficaria assim mais ou menos Dim varIfError As Variant varIfError = WorksheetFunction.IfError(0, "Not Found")
  15. Boa Dia! Precisava fazer um dicionário, com as seguintes condições: -Ir no Sheet1 e procurar a coluna "Customer" e pegar de 1 em 1 e pesquisar no Sheet2 por Dicionário - Sendo a chave o nome "inBiz" (coluna A do sheet2) e o valor: "AG" (coluna B) - Quando encontrasse o valor necessário, retornar o valor para o sheet1 coluna "Retornar aqui" (sendo as respostas correspondente a coluna "Customer") -Se não encontrar o valor procurado, retornar "Not found" e pintar de azul, por exemplo. Ex. Clube.xlsx
  16. @MidoriAh fiz aqui, muito obrigada, ajudou demais!
  17. @Midori tem como tirar a formatação das colunas quando copiar elas?
  18. @Midori em outra planilha, tem muitas linhas nessa outra, mas testei antes com um numero menor de conteudo e ainda copiou as não filtradas tambem.. Agora tentei mais uma vez e deu certo! Não sei porque não tinha funcionado, muito obrigada
  19. @Scofieldgyn Muito bom! funcionou perfeitamente, só precisava que em vez de localizar pela coluna ex."9" localizasse pelo nome ou pelo find por exemplo... @OreiaG Seu codigo colocou "Inactive" em tudo, não sei porque.. Fiz assim, acho que ta dando certo, tem algo que pode dar algum erro futuro no codigo? Sub AjustColunC() Dim col As Long Dim loc As Long Dim linha As Integer linha = 3 'mudar pra linha 2 quando tirar as anotações de cima col = Rows(2).Find("Customer MPN (Manufacturers)").Column loc = Rows(2).Find("Status (Manufacturers)").Column Do While linha >= 3 And Cells(linha, col) <> "" If Cells(linha, col) = "Qualified" Or Cells(linha, col) = "Obsolete" Or Cells(linha, col) = "LTB" Then Cells(linha, loc) = "Active" Else Cells(linha, loc) = "Inactive" End If linha = linha + 1 Loop End Sub
  20. @Midori quando dou start isso acontece o codigo fica assim? Sub Macro() Call CopiaColunas( _ Array("nomes", "numero", "digito"), _ Array("Nom Pessoas", "Num. Cod", "Customer"), _ Array(Sheets("Sheet1").[1:1], Sheets("Sheet2").[2:2]), 5) End Sub Sub CopiaColunas(OrigNomes As Variant, DestNomes As Variant, Linhas As Variant) Dim ProcOrig As Range Dim ProcDest As Range Dim Indice As Integer Dim Conta As Long If Linhas(0).Cells(1, 1).Offset(1) <> "" Then Conta = Linhas(0).End(xlDown).Row - 1 For Indice = 0 To UBound(OrigNomes) Set ProcOrig = Linhas(0).Find( _ What:=OrigNomes(Indice), LookIn:=xlValues, LookAt:=xlWhole) If Not ProcOrig Is Nothing Then Set ProcDest = Linhas(1).Find( _ What:=DestNomes(Indice), LookIn:=xlValues, LookAt:=xlWhole) If Not ProcDest Is Nothing Then Call ProcOrig.Offset(1).Resize(Conta).Copy(ProcDest.Offset(1)) End If End If Next Indice End If End Sub achei o erro, precisava ficar assim Sub CopiaColunas(OrigNomes As Variant, DestNomes As Variant, Linhas As Variant, Conta As Long) Dim ProcOrig As Range Dim ProcDest As Range Dim Indice As Integer Mas ainda assim o Codigo roda mas não esta copiando apenas as filtradas, ta vindo tudo junto
  21. @Midori Obrigada! Funcionou perfeitamente. Mas só pra saber, tem como fazer sem limite de linhas? fazer a macro ir ate a ultima linha preenchida (essas celulas que estavam em branco no exemplo foi erro meu, na planilha original todas vão estar preenchidas) E eu precisava que copiasse apenas o que esta visivel das colunas (no caso com filtro) pensei em fazer assim mas obviamente o codigo não funcionou, eu sei a função mas não sei onde colocar ela Sub Macro() Dim ul As String ul = Cells(Rows.Count, 1).End(x1Up).Row Call CopiaColunas( _ Array("nomes", "numero", "digito"), _ Array("Nom Pessoas", "Num. Cod", "Customer"), _ Array(Sheets("Sheet1").[1:1], Sheets("Sheet2").[2:2]), "ul") End Sub
  22. Preciso copiar varias colunas adjacentes com filtro selecionado, mas preciso que isso seja feiot em VBA para adicionar na SUB da macro que estou fazendo
  23. @Scofieldgyn precisava que fosse codigo mesmo, assim não funciona dentro da sub, tem que ser feita um a um (de preferência encontrasse qual coluna é pelo Find ex. Cells.Find(What:="Customer MPN (Manufacturers)", After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False).Activate Sub CopiaColaColunas() ActiveCell.FormulaR1C1 = _ "=IF(OR(OR(RC[5]=""Qualified"",RC[5]=""Obsolete"",RC[5]=""LTB"")),""Active"",""Inactive"")" end sub

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!