Este fórum foi descontinuado. LEIA AQUI e participe da Comunidade BABOO :)

Ir para conteúdo

osvaldomp

Time BABOO
  • Postagens

    1.581
  • Desde

  • Última visita

  • Days Won

    63

Tudo que osvaldomp postou

  1. Experimente uma cópia da fórmula matricial abaixo em I5 da Planilha1 e arraste para baixo. Lembrando que por ser fórmula matricial, após colar a fórmula na célula aperte F2 e em seguida aperte juntas Ctrl+Shift+Enter em seguida arraste. =MÁXIMO(SE(DESLOC(Ks!A$4;;CORRESP(N$5;Ks!B$4:J$4;0);37)<=H5;DESLOC(Ks!A$4;;CORRESP(N$5;Ks!$B$4:$J$4;0);37)))
  2. Você abandonou o tópico do link abaixo
  3. Se você quiser testar uma solução via UDF então instale uma cópia da função abaixo em um módulo comum, assim: 1. copie o código daqui 2. a partir da planilha Itens tecle 'Alt+F11' para acessar o editor de VBA 3. no menu do editor / Inserir / Módulo 4. cole o código na janela em branco que vai se abrir 5. feito! 'Alt+Q' para retornar para a planilha 6. por último insira em G5 ~~~> =cat() e em seguida arraste para a direita e para baixo Function cat() Dim c As Range, D As Range, po As String Application.Volatile With Sheets("Itens") For Each c In .Range("B3:B" & .Cells(Rows.Count, 2).End(3).Row) If c.Value = .Cells(4, Application.Caller.Column) Then po = "Det " & .Cells(Application.Caller.Row, 6) On Error GoTo spla Set D = Sheets(po).Rows(1).Find(c.Offset(, 1).Value) If Not D Is Nothing Then cat = cat + Application.Sum(Sheets(po).Columns(D.Column)) End If End If Next c End With Exit Function spla: cat = 0 End Function
  4. Experimente: Sub ReplicaRegistros() Dim c As Range, r As Long With Sheets("pesquisa") For r = 2 To .Cells(Rows.Count, 1).End(3).Row Set c = Sheets("Planilha5").[A:A].Find(.Cells(r, 1), lookat:=xlWhole) If Not c Is Nothing Then Sheets("Planilha5").Cells(c.Row, 2).Resize(, 24).Value = .Cells(r, 2).Resize(, 24).Value End If Next r End With On Error Resume Next Set c = Sheets("Planilha5").[A:A].Find(Sheets("pesquisa").Cells(r, 1), lookat:=xlPart) End Sub
  5. 1. selecione B2:B366 / digite 1,20 / aperte Ctrl + Enter ou 2. coloque em B2 ~~~> =A$1 e estenda até B366, aí coloque em A1 o valor desejado
  6. A sua fórmula está correta, provavelmente você colocou texto em B21 e ou B22, por isso a fórmula retorna o erro #VALOR. Em B21 e em B22 coloque apensas os valores, exemplos: 40,26 ou 125,89.
  7. em A1 coloque o valor disponível em B1 coloque o valor gasto em C1 ~~~> =SE(A1>=B1;"sobrando "&A1-B1;"faltando "&B1-A1)
  8. Precisamos ver o seu código atual. Informe também em quais partes do seu código você quer fazer cada uma das três operações que citei no post anterior.
  9. Olá, Geneci. Veja se a fórmula abaixo atende. =ARRUMAR(DIREITA(A1;NÚM.CARACT(A1)-PROCURAR("-";A1)))
  10. Sub RetiradaV1() [C6] = [F12] End Sub Sub RetiradaV2() [C6] = "": [C6] = [F12] End Sub
  11. Veja se atende: Instale uma cópia do código abaixo no módulo da planilha Plan1, assim: 1. copie o código daqui 2. clique com o direito na guia daquela planilha e escolha 'Exibir Código' 3. cole o código na janela em branco que vai se abrir 4. feito! 'Alt+Q' para retornar para a planilha e testar Private Sub Worksheet_Change(ByVal Target As Range) Dim p As String If Intersect(Target, [H22:H76]) Is Nothing Or Target.Value <> _ "CONCLUÍDO(SENDO TRATADO ATRAVÉS DO PROTOCOLO XXXXXXX)" Then Exit Sub p = InputBox("INSIRA ABAIXO O NÚMERO DO PROTOCOLO" & vbLf & "EM SEGUIDA CLIQUE EM OK OU APERTE Enter") If p = "" Then Target.Value = "": Exit Sub Target.Value = "CONCLUÍDO(SENDO TRATADO ATRAVÉS DO PROTOCOLO " & p & ")" End Sub funcionamento - ao selecionar uma célula no intervalo H22:H76 e escolher na lista de Validação a opção CONCLUÍDO(SENDO TRATADO ATRAVÉS DO PROTOCOLO XXXXXXX) (adotei esta opção pois não encontrei a opção Concluído(Sendo tratado pelo atendimento XXXXXXX) que você citou no primeiro post; altere no código se precisar), o código irá solicitar a inserção do número do protocolo em uma Caixa de Entrada, em seguida o código irá colocar na célula a opção escolhida, sendo XXXXXXX substituído pelo número do protocolo inserido na Caixa. obs. a Validação na sua planilha de exemplo aceita conteúdos fora da lista, então sugiro que seja refeita antes de testar o código.
  12. É possível solução via macro, retorne se houver interesse e confirme se o número a ser acrescentado é o que está na coluna A.
  13. Na caixa de diálogo da Validação / Alerta de erro / desmarque Mostrar alerta de erro ...
  14. Olá, Geneci. Experimente a fórmula abaixo. =SOMASE(DADOS!C3:C1000;"*"&F1;DADOS!D3:D1000)
  15. Experimente: Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, [B2:C2]) Is Nothing Then Exit Sub Target.Offset(1) = "=SUM(A2:A20)" End Sub Substitua no código =SUM(A2:A20) pela sua fórmula. Se você tiver dificuldade informe quais as fórmulas a serem colocadas em B3 e em C3.
  16. Olá, Geneci. Veja se a fórmula abaixo atende. =SE(E(DIA.DA.SEMANA(FIMMÊS(HOJE();0))=1;HOJE()>=FIMMÊS(HOJE();0)-2);"FATURA FECHADA";"FATURA ABERTA")
  17. Sugestão: disponibilize uma amostra do seu arquivo Excel em que ocorre o erro apontado.
  18. Olá, Geneci. Veja se atende. 1. cole uma cópia do código abaixo em um módulo comum do seu arquivo 2. salve o arquivo como Habilitado para Macro 3. rode o código abaixo 4. daí em diante bastará rodar o código para obter o resultado que você deseja Sub ArqSalvaAtualDeletaAnterior() Dim ant As String, nom As String ant = ThisWorkbook.FullName nom = Left(ThisWorkbook.Name, 16) & "-" & Format(Date, "mmmm-yyyy") Application.DisplayAlerts = False ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & nom Application.DisplayAlerts = True On Error Resume Next Kill ant End Sub
  19. Olá, Geneci. Experimente: =SE(CONT.SE(B2:B9;"ERODOTO");50;5)
  20. =SE(A1="";"";SE(A1=B1;"ok";"erro")) ou =SE(OU(A1="";B1="");"";SE(A1=B1;"ok";"erro"))
×
×
  • Criar Novo...