Excel에서 텍스트를 필수 dd-mm-yyyy로 변환할 수 없습니다.

Excel에서 텍스트를 필수 dd-mm-yyyy로 변환할 수 없습니다.

아래 Excel 문제를 해결하는 데 어려움을 겪고 있습니다. Excel 2003을 사용하고 있습니다. text.txt 형식에서 수천 개의 데이터를 가져오고 dd-mm-yyyy를 분할하려고 합니다.

-> 6022015(7자리)

->26012015 (8개)

Excel에서는 데이터 도구>텍스트를 열로>고정 너비

-> 2015년 2월 6일(7개)

->2015년 1월 26일 (8개)

열 데이터 형식에서 일반을 ​​선택한 다음 완료합니다. 7개 숫자의 경우 3개 열로 나누는 데 성공합니다. 그런데 8번의 경우 아래와 같은 에러가 발생합니다. 아래는 결과입니다

->26012015 변경->2 60 12015 "2015년 26 1이어야 합니다."

-> 6022015 변경 -> 2015년 6월 2일

누군가 오류를 정확히 찾아내고 해결책을 제공할 수 있습니까?

답변1

날짜가 "ddmmyyyy" 형식이길 바랍니다. 그런 다음 텍스트를 열로 변환하는 대신 찾아서 바꿔보세요."!"~와 함께아무것도 아님그런 다음 아래 수식을 적용하십시오.

=IF(LEN(A2)=8,LEFT(A2,2)&"-"&MID(A2,3,2)&"-"&RIGHT(A2,4),"0"&LEFT(A2,1)&"-"&MID(A2,2,2)&"-"&RIGHT(A2,4))

이것이 당신이 예상했던 것이기를 바랍니다 :)

답변2

원시 데이터가 dmmyyyy(7자리) 또는 ddmmyyyy(8자리) 형식이라고 가정합니다.

  1. 모든 데이터를 A열에 복사하거나 A열로 데이터를 가져오기만 하면 됩니다.

  2. B1 에 입력 =DATE(RIGHT(A1,4),MID(A1,LEN(A1)-5,2),LEFT(A1,LEN(A1)-6))하고 아래쪽으로 복사합니다.

  3. B열의 형식을 dd-mm-yyyy. B 열은 당신이 원하는 것입니다.

답변3

이거 한번 해봐:

=substitute(a1,"!","/")

날짜로 돌아오지 않는 경우 좋은 측정을 위해 0을 추가해 보세요.

=substitute(a1,"!","/")+0

및/또는 셀에 공백이 포함된 경우(자세한 텍스트의 왼쪽 또는 오른쪽) 셀을 다음과 같이 자릅니다.

=trim(substitute(a1,"!","/")+0)

답변4

나는 개인적으로 접근 방식을 사용하여 wilson분해하고 다시 조립했습니다. 그러나 마법사를 성공적으로 수행하려면 Text to Columns구분 기호나 동일한 길이의 데이터가 있어야 합니다.

동일한 길이의 데이터를 쉽게 얻을 수 있습니다. 옆에 또는 편리한 곳 어디에서나 "도우미 열"을 사용하고 다음 공식을 사용하십시오.

=IF(LEN(A1)=7,")"&A1,A1)

8개의 문자 값으로 구성된 열을 얻으려면 복사가 필요한 만큼 복사해야 합니다. 그런 다음 해당 열을 복사하여 Paste|Values|Special수식이 아닌 값 열을 가져옵니다. 고정 너비의 마법사를 사용 Text to Columns하면 날짜, 단일 열(부분으로 분할하는 것을 원하지 않음)로 해석하고 DMY날짜 유형을 알릴 수 있습니다.

이제 "실제 날짜"가 될 하나의 출력 열이 제공되며 이를 복사한 다음 원본 데이터 위에 붙여넣을 수 있습니다. 아니면 그것으로든 뭐든.

핵심은 데이터를 모두 8자 길이로 만들어 모두 동일하게 처리할 수 있도록 하는 것입니다. Excel에서는 7자리 데이텀이 1자리 일인지, 2자리 월인지, 아니면 그 반대인지 알 수 없으므로 해당 문제를 해결해야 합니다.

6자리 숫자가 있는 경우 기본 아이디어는 동일하지만 내용을 채우는 것이 조금 더 어려울 뿐입니다.

또한 이것은 마지막 네 자리가 연도이고 두 자리 연도가 아니며 월은 모두 한 자리 월이 아닌 두 자리 값이라는 것을 알고 있기 때문에 작동합니다. 이를 확신할 수 없다면 좀 더 정교한 접근 방식이 필요할 것입니다.

관련 정보