Ir ao conteúdo
  • Cadastre-se

isabela queiroz

Membro Pleno
  • Posts

    101
  • Cadastrado em

  • Última visita

posts postados por isabela queiroz

  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.
    image.png.74102511666ca516db20fe7bce8ae5f4.png

  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. 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.

    image.thumb.png.f7eba0f86a004b014f67158a021d8734.png

  5. @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
    

     

  6. 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 image.png.05acae79a4d2dcad3641753e710b65f6.png

  7. 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

  8. @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

     

     

    • Curtir 1
  9. @Midori quando dou start isso acontece image.png.8938ff6c1c6498e9c8fb045db860900a.png  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
    

     

    23 minutos atrás, isabela queiroz disse:
    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

    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

  10. @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

     

  11. @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!