1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Microsoft Excel - Dúvidas e Suporte

Discussão em 'Windows 7 e anteriores' iniciada por J_NUK_A, 29 de Agosto de 2008. (Respostas: 808; Visualizações: 73984)

  1. redrose

    redrose Power Member

    @ppt obrigado desde já por toda a ajuda que estás a dar.
    Já transformei toda a tabela em nºs com 2 algarismos, como indicaste.
    Se bem percebi, se já tenho tudo com 2 algarismos não deveria ser necessário por essa condição na fórmula, certo?
    De qualquer forma, a tua forma devolve-me sempre o valor "0" independentemente do conteúdo da célula.

    EDIT: Afinal está a funcionar. Perfeito.
    Muito obrigado.
     
    Última edição: 30 de Novembro de 2018
  2. ][_PWNN_][

    ][_PWNN_][ Power Member

    Preciso que uma célula registe a data em que uma outra célula é mudada para um determinado valor, mas de modo a que essa data fique fixa.

    Exemplo:
    A1 = 10
    A2 = data em que A1 passa para 15

    [hoje]
    A1 = 15
    A2 = 10-01-2019

    [amanhã]
    A1 = 15
    A2 = 10-01-2019

    [daqui a um ano]
    A1 = 15
    A2 = 10-01-2019


    Ou seja, o automatismo será só para ver o dia em que A1 mudou para o valor pretendido. Não pode depois actualizar continuamente, todos os dias, para não mudar a data.
    É possível, ou terei que meter a data manualmente?
     
  3. WDFOX

    WDFOX Moderador
    Staff Member

    Bom dia, mas por exemplo, se hoje a A1 for alterada e amanhã também for alterada, a data que fica é so a de amanha certo?
    A data é actualizada sempre que A1 é alterada correcto?
     
  4. ][_PWNN_][

    ][_PWNN_][ Power Member

    A A1 na realidade pode ter vários valores, pois representa o estado de uma tarefa.
    Contudo, o estado que vai activar a data será o último: "concluído".
    Em princípio, este estado será final e permanente, pelo que depois de a A1 estar como "concluído" não voltará atrás.
     
  5. WDFOX

    WDFOX Moderador
    Staff Member

    Ou seja vais terA1 B1 C1.... que quando cada uma passar a concluído, a célula 2 fica com a data actual, certo?
     
  6. ][_PWNN_][

    ][_PWNN_][ Power Member

  7. ppt

    ppt Power Member

    Só deve ser possível com Macros.
     
  8. WDFOX

    WDFOX Moderador
    Staff Member

    Sim so com macros, não consegui fazer isso durante o fim de semana a ver se consigo fazer hoje ou amanhã ;)
     
  9. redrose

    redrose Power Member

    Pessoal,

    Alguém sabe como posso identificar numa tabela (por exemplo com uma cor diferente) o número mais elevado ao longo de várias colunas?
    No fim tenho de contar qual das colunas tem maior nº de eventos mais elevados.

    Obrigado!
     
  10. ][_PWNN_][

    ][_PWNN_][ Power Member

    Para contares os números maiores podes fazer algo do género =CONTAR.SE(A1:A10; MAIOR(A1:A10;1))

    O que isto vai fazer é contar dentro da tabela A1:A10 o primeiro valor maior na tabela A1:A10.
    Ou seja, vamos supor que tens os valores 1, 2, 3, 4, 4, 4, 1, 2, 3, 0. Ele vai contar o número de vezes que o maior valor aparece. Neste caso iria devolver "3", porque o maior valor, 4, aparece 3 vezes.
    O "1" dentro do MAIOR define a hierarquia do valor, isto é, se queres o maior, o segundo maior, o terceiro maior, etc.
    No exemplo em cima, se tivesse "2" o resultado seria "2" porque o segundo maior número, 3, aparece 2 vezes.


    Depois, para saberes qual das colunas tem o maior número de eventos, podes usar =MÁXIMO(A11:D11), por exemplo, sendo que o que está dentro de parênteses vai ser a tabela onde tens os resultados da contagem anterior.
    O que isto te vai fazer não dizer a coluna tipo A, B ou C, mas dizer qual o valor maior dentro dos resultados obtidos, e depois podes procurar onde está esse número.
    Certamente dará para fazer de forma a devolver o nome da coluna, mas não me ocorre como.
     
  11. ][_PWNN_][

    ][_PWNN_][ Power Member

    É possível criar uma regra de formatação condicional que se aplique às várias folhas de um livro, sem ter que a fazer para cada folha individualmente?
     
  12. ppt

    ppt Power Member

    Possível, certamente é. Mas julgo que só com macros.

    Inicia a gravação de uma macro, faz a ação de aplicar a formatação condicional e depois muda para a folha seguinte. Para a gravação da macro. Vai ver o código e adapta.
     
  13. BolaBrancaV7

    BolaBrancaV7 Power Member

    São assim tantas folhas? O pincel de formatação não resolve?
     
  14. ][_PWNN_][

    ][_PWNN_][ Power Member

    Deu-me qualquer coisa assim

    Código:
    Range("Tabela1[Estado]").Select
        Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
            Formula1:="=""Bom"""
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Font
            .ThemeColor = xlThemeColorAccent3
            .TintAndShade = -0.499984740745262
        End With
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorAccent3
            .TintAndShade = 0.399945066682943
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
            Formula1:="=""Médio"""
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Font
            .ThemeColor = xlThemeColorAccent6
            .TintAndShade = -0.499984740745262
        End With
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorAccent6
            .TintAndShade = 0.399945066682943
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
            Formula1:="=""Mau"""
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Font
            .ThemeColor = xlThemeColorAccent2
            .TintAndShade = -0.499984740745262
        End With
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorAccent2
            .TintAndShade = 0.399945066682943
        End With
        Selection.FormatConditions(1).StopIfTrue = False
    
    Tentei alterar no Range de modo a incluir as várias folhas, mas não dá, porque ao que parece o Range funciona tipo Range (a, b).
    Tentei também fazer copy paste desse código e meter abaixo e alterar o Range para Tabela 2, e também não deu.
    Sugestões?
     
  15. ppt

    ppt Power Member

    Com a formatação condicional que forneceste, resulta neste código. Comentei-o para ser mais fácil perceberes o que se vai passando.

    Na parte do Range, defini como "A1:B2", mas tens de alterar para as células que queres formatar.
    Código:
    Sub Macro1()
    
        'Ciclo para passar por todas as folhas
        For i = 1 To Application.Sheets.Count
       
            'Selecionar a folha
            Sheets(Application.Sheets(i).Name).Select
           
            'Células a formatar com a formatação condicional
            Range("A1:B2").Select
           
            'Formatação a aplicar
            Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
                Formula1:="=""Bom"""
            Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
            With Selection.FormatConditions(1).Font
                .ThemeColor = xlThemeColorAccent3
                .TintAndShade = -0.499984740745262
            End With
            With Selection.FormatConditions(1).Interior
                .PatternColorIndex = xlAutomatic
                .ThemeColor = xlThemeColorAccent3
                .TintAndShade = 0.399945066682943
            End With
            Selection.FormatConditions(1).StopIfTrue = False
            Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
                Formula1:="=""Médio"""
            Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
            With Selection.FormatConditions(1).Font
                .ThemeColor = xlThemeColorAccent6
                .TintAndShade = -0.499984740745262
            End With
            With Selection.FormatConditions(1).Interior
                .PatternColorIndex = xlAutomatic
                .ThemeColor = xlThemeColorAccent6
                .TintAndShade = 0.399945066682943
            End With
            Selection.FormatConditions(1).StopIfTrue = False
            Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
                Formula1:="=""Mau"""
            Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
            With Selection.FormatConditions(1).Font
                .ThemeColor = xlThemeColorAccent2
                .TintAndShade = -0.499984740745262
            End With
            With Selection.FormatConditions(1).Interior
                .PatternColorIndex = xlAutomatic
                .ThemeColor = xlThemeColorAccent2
                .TintAndShade = 0.399945066682943
            End With
            Selection.FormatConditions(1).StopIfTrue = False
            'Fim da formatação a aplicar
       
        Next
         
    End Sub
     
  16. H-Racky

    H-Racky Power Member

    Alguém sabe se é possível passar os valores separados por vírgulas para células individuais sem ter de fazer manualmente?

    Tipo isto:
    [​IMG]
     
  17. ][_PWNN_][

    ][_PWNN_][ Power Member

    Acho que há uma função que faz isso. Agora não tenho acesso a um PC, mas mais logo confirmo.
     
  18. ppt

    ppt Power Member

    No separador Dados, opção Texto para Colunas. Depois, se quiseres que, em vez de aparecerem apenas numa linha, que apareçam na mesma coluna, copias os valores e fazes colar especial, transpor.
     
  19. H-Racky

    H-Racky Power Member

  20. ][_PWNN_][

    ][_PWNN_][ Power Member

    Tenho um ficheiro para gerir os pedidos e stock de sinais de trânsito.

    Os pedidos são registados numa folha, onde uma das colunas é o sinal pedido, e uma outra é o estado do pedido.
    Os estados existentes são
    1- Pedido Recebido
    2- Requisitado em Armazém
    3- Pronto para Levantamento
    4- Entregue ao Requerente
    5- Colocado

    O stock é registado numa outra folha (Sinais).

    Actualmente, é retirada uma unidade ao stock de determinado sinal quando o pedido desse sinal tem como estado "5- Colocado".
    Por exemplo, se um pedido de um sinal de STOP tem como estado "5- Colocado", então o stock vai passar de 10 para 9.
    Mas, na verdade, o sinal sai do armazém a partir do estado "4- Entregue ao Requerente", pelo que o stock deveria mudar nessa fase.

    Como faço para que seja retirada uma unidade ao stock se o estado for "4- Entregue ao Requerente" OU "5- Colocado"?
    Consigo imaginar uma fórmula com IFs para fazer isto, mas haverá algo mais... elegante?

    Obrigado :)
     

Partilhar esta Página