RE: exibindo o máximo de entrada direta de dados ou valor de célula da fórmula

0

Com referência a: Excel - como ter entrada direta de dados ou valor de célula da fórmula

Gostaria de perguntar sobre um problema relacionado. Como eu iria editar a minha fórmula VBA se eu gostaria de comparar o valor formulado existente, com o novo valor de entrada. E exiba o Max do valor de entrada formulado e mais recente.

Muito obrigado pela sua gentil assistência. Muito apreciada.

    
por keefe ong 02.07.2014 / 04:35

1 resposta

0

A partir do seu pedido original: Se A2 e A3 tiverem valores numéricos, A4 será preenchido com a soma. Se eles não forem numéricos ou nulos, o A4 mostrará um erro. Se A4 for sobrescrito, esse valor será permanente até que A2 ou A3 sejam alterados novamente. Para adicionar os novos requisitos: Se A2 e A3 produziram uma boa soma para A4 e alguém sobrescreve A4 com um novo valor numérico, então você deseja que o máximo seja tomado entre A2 + A3 e A4. Eu suponho que isso deve ser exibido na célula A5.

Adicionando à resposta original: Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A2:A3")) Is Nothing Then If WorksheetFunction.Count(Range("A2:A3")) = 2 Then Range("A4").Formula = "=A2+A3" End If ElseIf Not (Intersect(Target, Range("A4"))) Is Nothing Then 'Check for numbers in a2, a3, and a4 If IsNumeric(Range("A2").Value) And IsNumeric(Range("A3").Value) And IsNumeric(Range("A4").Value) Then 'If a2+a3 is greater than a4 If Range("A2").Value + Range("A3").Value > Range("A4").Value Then 'set the sum of a2 and a3 to cell a5 Range("A5").Value = Range("A2").Value + Range("A3").Value Else 'set the value of cell a4 to cell a5 Range("A5").Value = Range("A4").Value End If End If End If End Sub

    
por 02.07.2014 / 15:45