Formato Data em maiusculas no Excel

Formato Data em maiusculas no Excel

Formato data em maiusculas no Excel não se consegue obter só através da aplicação de um formato data.

Esta situação pode ser ultrapassada de duas formas

Solução 1

Bem simples, instalar um tipo de letra só com maiúsculas e formatar as celulas com datas com esse tipo de letra, caso não tenham, existem diversos sites com fontes deste tipo e gratuitas (ex: http://www.dafont.com/pt/u-s-101.font ).

Data em maiusculas no Excel - Tipo de Letra

Solução 2

Através de uma macro, terá que aceder ao Editor do VBA (ALT+F11) para colocar a macro no sitio certo. A execução da macro e consequente modificação do conteudo da celula só é feita caso essa celula tenha um valor no formato data e não contenha formulas. 

A macro soluciona o problema e mantêm o valor na celula como data para futuras operações caso seja necessário, como pode ver na imagem abaixo.

Data em maiusculas no Excel - Macro

Se a intenção for interceptar todas as folhas (worksheets) do livro (workbook) a macro deve ser colocado em “EsteLivro” (ThisWorkbook).

Data em maiusculas no Excel - Livro

Código da macro

				
					Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Dim celula      As Range
    Set celula = Target
    If IsDate(celula) And celula.HasFormula = FALSE Then
        Application.EnableEvents = FALSE
        With celula
            .Value = UCase(Format(.Value, "dd-mmmm-yyyy"))
        End With
        Application.EnableEvents = TRUE
    End If
    Set celula = Nothing
End Sub
				
			

Mas se quiser usar numa só folha (worksheet) do livro coloque a macro abaixo no código da folha.

Data em maiusculas no Excel - Folha

Código da macro

				
					Private Sub Worksheet_Change(ByVal Target As Range)
	Dim celula As Range
	Set celula = Target
	If IsDate(celula) And celula.HasFormula = False Then
		Application.EnableEvents = False
			With celula
				.Value = UCase(Format(.Value, "dd-mmmm-yyyy"))
			End With
		Application.EnableEvents = True
	End If
	Set celula = Nothing
End Sub
				
			

Nesta solução, apesar da macro ser igual, o evento que a executa é diferente, copie o código certo para o local certo, veja nas imagens associadas.

VIDEO

O video demonstrativo da 2ª solução com a 1ª macro.