About Me
Com tecnologia do Blogger.
Seguidores
Estatisticas
No post anterior, mostrei como se altera a posição do sinal menos (-).
Passo agora a mostrar duas novas fórmulas que, igualmente, para além de efectuarem a mudança de posição do sinal menos (-), transformam o valor/texto em valor/valor e, assim, susceptível de se poder efectuar a soma pretendida:

Fórmula em B1 (com copy e paste para B2:B4):
=IF(ISNUMBER(--A1);--A1;IF(AND(RIGHT(TRIM(A1))="-";ISNUMBER(-SUBSTITUTE(A1;"-";"";1)));-SUBSTITUTE(A1;"-";"");A1))
ou
Fórmula em B1 (com copy e paste para B2:B4):
=IF(ISNUMBER(A1);A1;SUBSTITUTE(A1;"-";"")*-1)
Passo agora a mostrar duas novas fórmulas que, igualmente, para além de efectuarem a mudança de posição do sinal menos (-), transformam o valor/texto em valor/valor e, assim, susceptível de se poder efectuar a soma pretendida:
Fórmula em B1 (com copy e paste para B2:B4):
=IF(ISNUMBER(--A1);--A1;IF(AND(RIGHT(TRIM(A1))="-";ISNUMBER(-SUBSTITUTE(A1;"-";"";1)));-SUBSTITUTE(A1;"-";"");A1))
ou
Fórmula em B1 (com copy e paste para B2:B4):
=IF(ISNUMBER(A1);A1;SUBSTITUTE(A1;"-";"")*-1)
Se pretendermos trocar a posição do sinal menos (-), podemos utilizar a seguinte fórmula, com a combinação das Funções IF(), ISNUMBER() e SUBSTITUTE().
De notar a inclusão do sinal menos (-) antes da Função SUBSITUTE():
De notar a inclusão do sinal menos (-) antes da Função SUBSITUTE():
Para resolver o problema do mês de Janeiro, por forma a não incluir as células em branco pertencentes ao Range, podemos optar por, pelo menos, mais duas fórmulas diferentes, a partir da Função SUMPRODUCT():
2005-02-07
No dia 2 de Fevereiro, apresentei um post com uma fórmula que junta as funções Sumproduct()e Text(), para verificar a quantidade de ocorrências contidas num determinado Range.
No entanto, a fórmula apenas funciona correctamente (problema só em relação a "Jan") se o Range estiver completamente preenchido; se houver células em branco, estas são igualmente contadas como se contivessem a ocorrência "Jan", o mesmo não acontecendo com outras ocorrências, como se pode verificar no exemplo seguinte:
A fórmula a executar, para que a contagem das ocorrências seja correcta (não contando, por isso, com as células vazias como fazendo parte da ocorrência), é a seguinte, agora com a incorporação da Função IsBlank():
No entanto, a fórmula apenas funciona correctamente (problema só em relação a "Jan") se o Range estiver completamente preenchido; se houver células em branco, estas são igualmente contadas como se contivessem a ocorrência "Jan", o mesmo não acontecendo com outras ocorrências, como se pode verificar no exemplo seguinte:
A fórmula a executar, para que a contagem das ocorrências seja correcta (não contando, por isso, com as células vazias como fazendo parte da ocorrência), é a seguinte, agora com a incorporação da Função IsBlank():
2005-02-06
Em Excel Pragma, foi apresentada uma Função definida pelo utilizador, a qual, porque prática, aqui apresento, a título de exemplo:

O Código:
Public Function ConcSep(InCells As Range, Sep As String) As String
Dim OutStr As String
Dim Cell As Variant
OutStr = ""
If InCells Is Nothing Then Exit Function
On Error Resume Next
For Each Cell In InCells
OutStr = OutStr & Cell.Value & Sep
Next Cell
OutStr = Left(OutStr, Len(OutStr) - Len(Sep))
ConcSep = OutStr
End Function
O Código:
Public Function ConcSep(InCells As Range, Sep As String) As String
Dim OutStr As String
Dim Cell As Variant
OutStr = ""
If InCells Is Nothing Then Exit Function
On Error Resume Next
For Each Cell In InCells
OutStr = OutStr & Cell.Value & Sep
Next Cell
OutStr = Left(OutStr, Len(OutStr) - Len(Sep))
ConcSep = OutStr
End Function
2005-02-02
Se pretendermos preencher uma coluna com a sequência de uma série iniciada na coluna adjacente, digitam-se os dois primeiros números sequenciais na coluna que se pretende preencher:

marcam-se as duas células e no canto inferior direito faz-se um duplo clique.
O resultado é o preenchimento sequencial da coluna, tomando por base a coluna adjacente anterior:

Esta Dica foi retirada de Office Tips and Hints Blog
marcam-se as duas células e no canto inferior direito faz-se um duplo clique.
O resultado é o preenchimento sequencial da coluna, tomando por base a coluna adjacente anterior:
Esta Dica foi retirada de Office Tips and Hints Blog
Se pretendermos ver a quantidade de ocorrências contidas num determinado Range de células (no exemplo, o Range é A1:A5 e está formatado como data na forma dd-mmm e as ocorrências pretendidas são "Jan" e "Fev"), podemos utilizar a seguinte fórmula:
2005-02-01
Como é sabido, o Excel apenas dá a possibilidade de incluir 3 formatações condicionais:

Mas, com um pouco de código VBE, é possível incluir muitas mais formatações condicionais. Para tanto, basta clicar com a tecla direita do rato no tabulador da folha:

escolher "Ver Código" e escrever o seguinte:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
With Target
Select Case LCase(.Value)
Case Is = "teste1": .Interior.ColorIndex = 5
Case Is = "teste2": .Interior.ColorIndex = 6
Case Is = "teste3": .Interior.ColorIndex = 7
Case Is = "teste4": .Interior.ColorIndex = 8
Case Is = "teste5": .Interior.ColorIndex = 9
Case Else
.Interior.ColorIndex = xlNone
End Select
End With
End Sub
O resultado será, por exemplo ( de notar que a formatação condicional, neste caso, abrange toda e qualquer célula da coluna A):
Mas, com um pouco de código VBE, é possível incluir muitas mais formatações condicionais. Para tanto, basta clicar com a tecla direita do rato no tabulador da folha:
escolher "Ver Código" e escrever o seguinte:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
With Target
Select Case LCase(.Value)
Case Is = "teste1": .Interior.ColorIndex = 5
Case Is = "teste2": .Interior.ColorIndex = 6
Case Is = "teste3": .Interior.ColorIndex = 7
Case Is = "teste4": .Interior.ColorIndex = 8
Case Is = "teste5": .Interior.ColorIndex = 9
Case Else
.Interior.ColorIndex = xlNone
End Select
End With
End Sub
O resultado será, por exemplo ( de notar que a formatação condicional, neste caso, abrange toda e qualquer célula da coluna A):
Subscrever:
Mensagens (Atom)