2015-01-12 2 views
1

매크로를 사용하여 Excel 파일에서 CSV 파일로 데이터를 내보내려고합니다. Excel 파일 (dd-mmm-yyyy)의 날짜 형식이 csv 파일에서 (dd-mmm-yy)로 변경되는 부분을 제외하고는 정상적으로 작동합니다. 나는 csv 파일에도 (dd-mmm-yyyy)로 날짜 형식을 유지하고 싶습니다.매크로를 통해 생성 된 CSV 파일의 날짜 형식

아무도 도와 줄 수 없습니까? CSV 파일에 데이터를 쓰는 코드 부분은

c1 = 2 
Dim tempDate As String 
Dim tempDate2 As String 

tempDate = Format(Sheets("Source").Cells(c1, 2).value, "dd-mmm-yyyy") 
tempDate2 = Format(Sheets("Source").Cells(c1, 3).value, "dd-mmm-yyyy") 


txtfile.WriteLine (Sheets("Source").Cells(c1, 1).value & sSep & tempDate & sSep & _ 
tempDate2 & sSep & Sheets("Source").Cells(c1, 4).value & sSep & _ 
temp1 & sSep & Sheets("Source").Cells(c1, 6).value & sSep & Sheets("Source").Cells(c1, 7).value & sSep & _ 
Sheets("Source").Cells(c1, 8).value) 
c1 = c1 + 1 
+1

텍스트 편집기를 사용하거나 Excel에서 다시 열면 .csv 파일을 어떻게 확인하고 있습니까? (이전해야합니까) – Rory

+0

@Rory 나는 그것을 확인하기 위해 Excel을 사용합니다. csv 파일은 나중에 데이터베이스 테이블을 채우기 위해 업로드됩니다. 날짜 형식이 필요한 곳입니다. – Amber

+0

오작동하는 관련 코드 블록을 게시 할 수 있습니까? – laylarenee

답변

1

Microsoft Excel을 사용하여 CSV 파일을 열도록 설정 한 것처럼 들립니다. 다른 프로그램, 아마도 Notepad.exe를 사용하도록 "열기"대화 상자를 변경할 수 있습니다.

Microsoft Excel을 사용하여 CSV 파일을 열면 서식이 지정되지 않았으므로 Excel의 기본 날짜 형식이 모든 날짜에 적용됩니다. CSV 파일에는 서식 지정 정보를 포함 할 수 없습니다.

가능한 해결 방법 : = 기호로 포맷 된 날짜 문자열을 앞에 그리고이 같은 문자열로 취급 그래서 따옴표로 포장 : 당신은 다른 방법으로도 원인 아포스트로피와 날짜를 앞에 수

="1/12/2014" 

문자열로 처리하는 Excel :

'1/12/2014 

또 다른 가능한 솔루션은 실제 Excel 파일을 만드는 것입니다.

관련 문제