Excel 날짜를 문자열로 변환
Excel 시트의 셀에는 다음과 같은 날짜 값이 있습니다.
01/01/2010 14:30:00
해당 날짜를 텍스트로 변환하고 텍스트가 날짜와 정확히 똑같이 보이기를 원합니다. 따라서 Date 값은 01/01/2010 14:30:00
비슷해야 01/01/2010 14:30:00
하지만 내부적으로는 Text 여야합니다.
Excel에서 어떻게 할 수 있습니까?
=TEXT(A1,"DD/MM/YYYY hh:mm:ss")
(24 시간)
=TEXT(A1,"DD/MM/YYYY hh:mm:ss AM/PM")
(표준 시간)
VBA 접근 방식은 다음과 같습니다.
Sub change()
toText Sheets(1).Range("A1:F20")
End Sub
Sub toText(target As Range)
Dim cell As Range
For Each cell In target
cell.Value = cell.Text
cell.NumberFormat = "@"
Next cell
End Sub
프로그래밍없이 솔루션을 찾고 있다면 질문은 수퍼 유저로 이동해야합니다.
다른 옵션이 있습니다. Excel에 내장 된 'Text to Columns'마법사를 사용하십시오. Excel 2007의 데이터 탭에 있습니다.
하나의 열을 선택하면 파일 형식 및 구분 기호의 기본값이 작동해야하며 열의 데이터 형식을 변경하라는 메시지가 표시됩니다. 텍스트를 선택하면 텍스트 형식으로 설정되어 날짜로 저장되지 않습니다.
''문자를 사용하는 일부 상황에서는 사전에 작동하지만 CSV에 저장하고 다시로드하면 불가능합니다.
'01/01/2010 14:30:00
TEXT () 수식을 작동시킬 수 없습니다
가장 쉬운 해결책은 붙여 넣기 전에 열을 텍스트로 설정 한 상태에서 붙여 넣기를 메모장에 복사하고 Excel로 다시 복사하는 것입니다.
아니면 이런 식으로도 똑같이 할 수 있습니다
=DAY(A2)&"/"&MONTH(A2)&"/"&YEAR(A2)& " "&HOUR(B2)&":"&MINUTE(B2)&":"&SECOND(B2)
프로그래밍을 사용하지 않는 경우 다음을 수행하십시오. (1) 열을 선택하고 (2) 마우스 오른쪽 버튼을 클릭하고 셀 서식을 선택하십시오. (3) "사용자 정의"를 선택하십시오. (4) "유형 :"바로 아래에서 dd / mm / yyyy hh : mm을 입력하십시오. : ss
Excel 2010에서 marg의 답변 은 내 스프레드 시트에 가져온 일부 데이터 (가져온 데이터)에 대해서만 작동했습니다. 다음 솔루션은 모든 데이터에서 작동했습니다.
Sub change()
toText Selection
End Sub
Sub toText(target As range)
Dim cell As range
Dim txt As String
For Each cell In target
txt = cell.text
cell.NumberFormat = "@"
cell.Value2 = txt
Next cell
End Sub
I have no idea about the year of publication of the question; it might be old now. So, I expect my answer to be more of a reference for future similar questions after my post.
I don't know if anybody out there has already given an answer similar to the one I am about to give, which might result -I think- being the simplest, most direct and most effective: If someone has already given it, I apologize, but I haven't seen it. Here, my answer using CStr instead of TEXT:
Asuming cell A1 contains a date, and using VBA code:
Dim strDate As String 'Convert to string the value contained in A1 (a date) strDate = CStr([A1].Value)
You can, thereafter, manipulate it as any ordinary string using string functions (MID, LEFT, RIGHT, LEN, CONCATENATE (&), etc.)
The selected answer did not work for me as Excel was still not converting the text to date. Here is my solution.
첫 번째 열 A에 유형의 데이터가 2016/03/25 21:20:00
있지만 텍스트로 저장되어 있다고 가정 하십시오. 그런 다음 B =DATEVALUE(A1)
열에 쓰고 C 열에 씁니다 =TIMEVALUE(A1)
.
그런 다음 D 열 =B1+C1
에서 날짜 및 시간의 숫자 형식을 추가하십시오.
마지막으로 E 열을 마우스 오른쪽 버튼으로 클릭하고을 선택하여 D에서 E 열로 값을 복사합니다 Paste Special -> Paste as Values
.
E 열의 숫자 값을 강조 표시하고 데이터 유형을 날짜로 변경하십시오 YYYY-MM-DD HH:MM:SS
. 양식의 사용자 정의 날짜를 사용하는 것이 좋습니다.
참고 URL : https://stackoverflow.com/questions/2636157/excel-date-to-string-conversion
'IT story' 카테고리의 다른 글
SQL Server에 날짜 시간을 삽입하는 SQL 쿼리 (0) | 2020.07.14 |
---|---|
reduce ()를 사용하는 유용한 코드? (0) | 2020.07.14 |
자바 스크립트 객체 : 상위 항목 가져 오기 (0) | 2020.07.14 |
Npm을 사용하여 github에서 특정 지점 설치 (0) | 2020.07.14 |
컨트롤러 .NET MVC에서 URL 생성 (0) | 2020.07.14 |