로캘에 쉼표(1,7)가 필요한 경우 점(1.7)으로 소수점 붙여넣기를 처리합니다.

로캘에 쉼표(1,7)가 필요한 경우 점(1.7)으로 소수점 붙여넣기를 처리합니다.

점이 소수 구분 기호로 사용되는 데이터 소스가 있습니다. 즉, : 1.49는 "1과 거의 절반"을 의미합니다. 변경할 수 없습니다.

이 숫자는 Excel 또는 Calc의 숫자 셀에 복사하여 붙여넣어야 합니다. 파일은 공개되어 누구나 얻을 수 있습니다(여기에서 받으세요) 따라서 사용자 PC/프로그램을 제어할 수 없습니다.

대부분의 사용자는 it_IT 로케일을 사용하는 이탈리아어로 소수점 이하 자릿수는 쉼표로 구분됩니다. 즉 :는 1,49"1과 거의 절반"을 의미합니다(점 대신 쉼표에 유의하세요).

이탈리아어 로케일 사용자가 1.49데이터 소스에서 숫자 셀로 복사하여 붙여넣으려고 하면 Calc/Excel은 숫자를 소수로 인식하지 못하기 때문에 바나나가 됩니다.

셀에 언어를 설정하면 프로그램을 닫을 때까지 모든 것이 작동합니다. 문서를 다시 열면 설정이 사라지고 더 이상 작동하지 않습니다.

여기에 이미지 설명을 입력하세요

그래서 내 질문은 다음과 같습니다.

  1. 사용자 정의 로케일에 관계없이 파일/시트의 로케일을 "en_US"로 강제 설정할 수 있습니까?
  2. Language 속성을 고정할 수 있나요?
  3. 다른 아이디어는 없나요? ("사용자에게 설정 변경을 요청"하지 마세요)

가능하다면 매크로는 피하고 싶습니다.

감사해요!

업데이트: 저는 Windows 10 x64를 사용하고 있으며 방금 LibreOffice 5.4.4 x64로 업그레이드했습니다. 셀별 언어 설정이 여전히 저장되지 않습니다. 그것이 맞는지는 나에게도 명확하지 않다.추정된저장하거나 단지 보기 설정인 경우(저장 버튼에 불이 들어오기 때문에 전자라고 추측할 수 있습니다.)

답변1

TurboLab.it에 있는 내 친구들제안지금까지 최고의 솔루션 :

  1. 사용자 입력을 "텍스트"로 받아들이도록 설계된 셀을 설정합니다.
  2. 근처 임시 셀에서 점을 쉼표로 바꾸십시오.=SUBSTITUTE(E16;".";",")
  3. 대체된 값을 계산해 보세요.
  4. 필요한 경우 다시 변환하세요.

관심 있으신 분들을 위한 최종 파일은,여기서 이용 가능.

유일한 주요 단점은 사용자가 이탈리아어와 같이 "쉼표"가 소수 구분 기호인 로케일을 사용하는 경우에만 작동한다는 것입니다.

HTH.

답변2

붙여넣을 때마다 반복되는 수동 솔루션:

복사하여 붙여넣은 후; 붙여넣은 셀이 선택되었습니다...
즉시 찾기 및 바꾸기를 사용하여 먼저 "."를 바꾸세요. (천 단위 구분 기호)를 ""(예: "없음")으로 바꾼 다음 ","(원래 소수 구분 기호)를 "."로 바꿉니다. 새로운 소수 구분 기호).

숫자로 해석되도록 하려면 "선택하여 붙여넣기"를 사용하여 0을 더하거나 1을 곱해야 할 수도 있습니다.(==> 셀에 1 또는 0을 입력하고 복사한 다음 "선택하여 붙여넣기"를 수행하고 "값 추가" 또는 "값 곱하기"를 선택하세요).

자동화: "매크로 기록", 위의 "기록 중지"를 수행합니다. 여기에서 바로가기 키를 할당할 수도 있습니다.

관련 정보