Eu tenho o mesmo problema; aqui está a resposta postada ao meu pedido Aqui
====================================
Private Sub Workbook_Open()
With Application
Select Case .International(xlDateOrder)
Case 0 'mdy
ThisWorkbook.Names("DateFormat").Value = _
.International(xlMonthCode) & _
.International(xlDateSeparator) & _
.International(xlDayCode) & _
.International(xlDateSeparator) & _
.International(xlYearCode) & _
.International(xlYearCode)
Case 1 'dmy
ThisWorkbook.Names("DateFormat").Value = _
.International(xlDayCode) & _
.International(xlDateSeparator) & _
.International(xlMonthCode) & _
.International(xlDateSeparator) & _
.International(xlYearCode) & _
.International(xlYearCode)
Case 2 'ymd
ThisWorkbook.Names("DateFormat").Value = _
.International(xlYearCode) & _
.International(xlYearCode) & _
.International(xlMonthCode) & _
.International(xlDateSeparator) & _
.International(xlDayCode)
End Select
End With
End Sub
Você só precisa definir o nome "DateFormat" na pasta de trabalho e usá-lo em fórmulas como = TEXT (A1, DateFormat)
Atenciosamente