Excel에서 VBA 모듈에 문제가 있습니다. 스프레드 시트의 셀을 참조하고 쉼표로 구분 된 값을 텍스트 파일에 쓰는 스크립트가 있습니다.
내가하는 방식은 다음과 같습니다.
Dim line_data(0 to 1) As String
line_data(0) = SheetNameVar.Cells(7, "C").Value
line_data(1) = SheetNameVar.Cells(8, "C").Value
Dim line As String
line = Join(line_data, ",")
TextStreamNameVar.WriteLine line
모든 것이 예상대로 작동하지만 소수점 뒤에 0이 있으면 과학 표기법으로 텍스트 파일에 값을 계속 기록합니다. 예를 들어
3.77265350125136E-03,0.169769407556311
시트는 소수점 다음에 6 자리로 소수점으로 표시되지만 시트 쓰기에는 영향을 미치지 않습니다.
텍스트 스트림에 쓸 때 값 표기법을 변환하는 Excel VBA에 대한 정보를 찾지 못하는 것 같습니다. 이것을 막을 방법이 있습니까? 이상적으로는 시트 형식에 의존하지 않으므로 가독성을 위해 정밀도를 떨어 뜨릴 수 있습니다. 그러나 텍스트 파일에 다음과 같이 표시되는 값이 필요합니다.
.00377265350125136,0.169769407556311
도움을 주셔서 감사합니다.
그 결과 텍스트 파일에 "Ge5eral"이 기록되었습니다. "일반 번호"로 전환했지만 다시 과학적 표기법을 제공합니다.
—
토마스 커크 패트릭
Format(SheetNameVar.Cells(7, "C").Value,"General")