한 언어에서 다른 언어로 월을 자동으로 번역하는 방법은 무엇입니까?

한 언어에서 다른 언어로 월을 자동으로 번역하는 방법은 무엇입니까?

포르투갈어(브라질)의 결제 보고서를 영어로 번역하고 싶습니다. 개월 단위로 정확하며 자동화된 시트입니다.
계약은 1월에 시작될 수 있지만 일반적으로 나머지 11개월에도 시작됩니다.

첫 번째 달을 4월로 설정하면 오른쪽의 다른 11월(5월, 6월, 7월...)은 3월까지 계속 증가합니다.

저는 다음 수식을 만들었습니다.

=PROPER(TEXT((B1&1)+31;"mmmm")) 

두 번째 달부터 열두 번째 달까지.

하지만 저는 포르투갈어(브라질)로 사용하는데 아주 잘 작동합니다. 하지만 영어 달에 도달하면 실제로 작동하지 않습니다.

시도해 보았지만 [$-409]원하는 대로 작동하지 않습니다.

이것을 사용하면 Janeiro와 February처럼 되고 다음 달에는 오류가 발생합니다.

1월을 적고 2월, 3월 등을 받고 싶습니다.

귀하의 컴퓨터에서 작동할 수도 있습니다. 다른 언어에서도 시도해 보십시오.

참고: VBA가 작동하지 않습니다. 고객에게 보내야 합니다.

답변1

나는 당신이 원하는 것이 당신이 원하는 방식으로 가능하지 않다고 생각합니다.

귀하의 의견에 따르면 이 문서는 옵션이 아닌 다른 컴퓨터에서 사용될 수 있으므로 시스템 로케일 설정을 변경할 수 없습니다.

내가 생각할 수 있는 유일한 해결책은 VBa를 사용하는 것입니다.

이 예에서는 전체 워크시트를 살펴보고 해당하는 단어를 바꿉니다.

먼저 파일을 백업해두세요. VBa는 실행 취소할 수 없습니다.

Sub ChangeTheNameMeHearties()

Dim cell As Range

For Each cell In ActiveSheet.UsedRange
    Dim s As String
    Select Case LCase(cell.Value)

        Case cell.Value = "january"
            cell.Value = "Janeiro"

        Case cell.Value = "february"
            cell.Value = "Fevereiro"

    End Select
Next

End Sub

나머지 달을 추가해야 하지만 간단하게 설명하고 '번역' 방법을 생각해야 합니다.

또한 참조하십시오MS Office에 VBA를 어떻게 추가하나요?

다음과 같은 사례 문을 사용할 수도 있습니다.

    Case cell.Value = "january"
        cell.Value = "Janeiro"

    Case cell.Value = "janeiro"
        cell.Value = "January"

    Case cell.Value = "february"
        cell.Value = "Fevereiro"

    Case cell.Value = "fevereiro"
        cell.Value = "February"

즉, 실행할 때마다 언어 간에 전환됩니다.

답변2

이미 수정했습니다. 늦어서 죄송합니다.

나는 다음을 사용하여 고쳤다.

=PROPER(TEXT((DATE(2014,B3,1)),"mmmm"))

여기서 "B3"은 피벗 테이블에서 검색된 한 번만 변경되는 월 번호입니다.

다음 달은 "다음 달"이 아닌 +1을 받습니다.

=IF(B3<12,B3+1,1)

IF는 이전 달이 이미 12인 경우 1부터 다시 시작하는 데 사용됩니다. "if가 없으면 여전히 13을 넘어 계속 올라갈 것입니다."

관련 정보