Excel 날짜 열의 강제 가져오기 형식안녕하세요, JMP 커뮤니티 여러분,
JSL을 통해 Excel 가져오기 마법사를 사용하여 날짜 형식을 강제로 가져오는 데 도움을 찾고 있습니다. Excel 파일의 두 열(날짜 하나, 데이터 하나)에만 있는 데이터를 가져오려고 하는데 다음과 같습니다.

내가 가진 문제는 2019년 2월 12일에서 2019년 2월 13일로 전환되는 시점입니다(왼쪽에 빨간색으로 표시됨). 어떤 이유로 JMP는 시작부터 마지막 12.02.2019 값까지의 날짜 값을 dd.mm.yyyy 형식으로 읽다가 13.02.2019에서 날짜를 mm.dd.yyyy 형식으로 읽는 것으로 전환합니다. Excel 파일로 이동하여 셀 서식을 검토해 보니 동일합니다. JMP가 갑자기 전환되는 이유를 알 수 없습니다. 이 전환을 수행하면 JMP 테이블의 날짜 셀이 비어 있게 됩니다.
두 개의 다른 블록(처음부터 마지막 dd.mm.yyyy 형식까지)과 다른 블록의 두 번째 블록으로 데이터를 가져오는 경우 각 날짜는 올바르게 읽히지만 서로 다른 두 날짜의 열 정보 형식은 다르게 지정됩니다. 그리고 서로 호환되지 않습니다. 두 개의 하위 집합을 연결하려고 하면 연결하는 테이블의 일/월만 전환됩니다.
또한 시스템이나 JMP 설정을 강제하기 위해 JMP 기본 설정에서 여러 가지 토글 옵션을 변경해 보았으나 모두 실패했습니다.
날짜를 문자로 가져올 수 있다면 그에 따라 내용을 수정한 다음 연속 데이터 유형으로 다시 전환할 수 있으며 모두 괜찮을 것입니다. 유일한 문제는 이것을 강제하는 방법이나 이것이 최선의 방법인지 확실하지 않다는 것입니다.
대부분의 자동화 시도와 마찬가지로 저는 모든 Excel 시트나 파일에 들어가서 편집하지 않는 것을 강력히 선호합니다. JMP가 JSL 스크립트를 통해 이 작업을 수행하도록 하고 싶습니다.
가져오기에 사용하는 JSL 코드는 다음과 같습니다.
Open(
"file_location\file.xlsx",
Worksheets( "Sheet 1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 15 ),
Data Ends on Row( 0 ),
Data Ends on Column( 16 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
)
"열 감지 제한(0)" 옵션과 관련이 있나요? 이것과 그 기능에 대한 문서를 찾을 수 없습니다.
이 문제는 다음 사용자가 게시한 문제와 유사합니다. @가르텔 2017년 5월( https://community.jmp.com/t5/Discussions/Excel-Import-Date-Format/td-p/16619 ), 적어도 내가 아는 한 특정 문제에 대한 직접적인 해결책을 얻지 못했습니다.
어떤 도움이라도 대단히 감사하겠습니다!
감사해요,
DS
Re: Excel 날짜 열의 강제 가져오기 형식저는 Excel 365 빌드 1908을 사용하고 있으므로 상당히 새로운 버전입니다.어떤 버전의 JMP를 사용하고 있나요?
브라이언
Re: Excel 날짜 열의 강제 가져오기 형식나는 당신이 보낸 것을 포함하여 이 작업을 수행하기 위해 여러 가지 다른 작업을 시도했으며 가져오기는 실제 값 없이 숫자와 함께 표시됩니다...
엑셀 값: 2019년 11월 26일 9:41:04. 191 오후
JMP로 가져옴: 2019년 11월 26일 9:41:04. 000 오후
아직 설정하지 않은 항목을 변경할 수 있는 가져오기 설정이 있나요?
저는 이것을 가지고 놀면서 Excel에서 버그를 발견했는데 여러분도 같은 일이 일어나고 있는지 궁금합니다. dd/mm/yyyy hh:mm:ss.000 형식이 Excel에 있으면 .191 값이 셀에 표시되지만 상단의 수식 입력줄에는 표시되지 않습니다. 수식 입력줄을 클릭하면 수식이나 셀에 숫자가 더 이상 표시되지 않습니다. 그런 다음 수식 입력줄을 클릭하면 모든 숫자가 .000으로 변경됩니다.... 이것이 Excel에서 데이터를 가져오는 방식에 영향을 미칠 수 있는지 궁금합니다.
그것이 단지 Excel의 버그인지 아니면 제가 가지고 있는 버전(Excel 2013)인지는 모르겠습니다.스크립트가 작동할 때 어떤 버전의 Excel을 사용하고 있습니까?
Re: Excel 날짜 열의 강제 가져오기 형식사용자 정의 형식과 함께 "열 감지 제한" 옵션을 사용해 볼 수 있습니다.이 작업을 수행하려면 JMP 15가 필요할 것입니다.다음은 나에게 효과적이었습니다.
Open(
"C:\Users\sasbxc\Desktop\test.xlsx",
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 1 ),
Column Separator String( "-" ),
Column Numeric Format(
Index( 0 ),
Column Name( Col1 ),
Format( "d/m/y h:m:s", 26, 3 )
)
)
)
브라이언
Re: Excel 날짜 열의 강제 가져오기 형식큰 확인! 감사해요!
가져올 때 문자열로 읽으려면 어떤 스크립트 형식을 사용해야 합니까?
Re: Excel 날짜 열의 강제 가져오기 형식과거에 이와 같은 문제가 해결된 방식은 열을 문자열로 읽은 다음 프로세스를 날짜 값으로 게시하는 것입니다.
Re: Excel 날짜 열의 강제 가져오기 형식이렇게 빠른 응답을 보내주셔서 감사합니다!
문제는 실제로 가져오기 중에 발생하므로(내 생각에는) 이를 실행하여 사후 프로세스로 실행하는 것이 나에게 적합하지 않습니다.
따라서 첫 번째 열의 Excel 데이터는 다음과 같은 형식으로 표시됩니다.
2019/11/26 오후 09:41:04.190
JMP로 가져올 때 open(파일 경로, 워크시트()….) 사용 데이터 형식은 다음과 같습니다.
2019/11/26 오후 9:41:04
가져온 후 형식을 변경하면 결과는 다음과 같습니다.
2019/11/26 오후 9:41:04.000
그래서 가져오는 동안 마지막 세 자리 숫자가 삭제된 것 같습니다. JMP 테이블로 가져올 때 해당 형식을 강제로 적용할 수 있는 방법이 있나요?
Re: Excel 날짜 열의 강제 가져오기 형식다운로드된 데이터에 밀리초가 포함되어 있다고 가정하면 데이터 테이블을 가져온 후 형식을 변경하기만 하면 됩니다.그리고 이 예제의 또 다른 가정은 날짜 및 시간 값이 있는 열을 DateTime이라고 가정하고 다음 JSL을 적용하여 데이터 표시를 변경할 수 있다는 것입니다.
:DateTime << set format( "d/m/y h:m:s", 27, 3 );
Re: Excel 날짜 열의 강제 가져오기 형식안녕하세요 브라이언,
Excel 데이터를 가져오려고 하는데 원하는 형식으로 가져오는 데 어려움을 겪고 있습니다. JMP 15에 추가 가져오기 형식 지정 기능이 있다고 말씀하신 것을 확인했습니다. 저는 JMP15를 사용하고 있으므로 이 문제에 대해 여러분이 도움을 주실 수 있기를 바랐습니다.
Excel(첫 번째 열)의 시간 데이터에는 밀리초가 첨부되어 있으므로 가져오기에서 이를 인식하도록 강제해야 합니다. 가져올 때 JMP는 형식("d/m/yh:m:s",27,0)만 제공합니다. 형식("d/m/yh:m:s",27,3)으로 가져야 합니다. 이것이 내 코드인 경우 소수점 이하 3의 형식은 어디로 지정되나요?
Open(
"file_location\file.xlsx",
Worksheets( "Sheet 1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
Re: Excel 날짜 열의 강제 가져오기 형식안녕 @gzmorgan0 ,
마침내 돌아와서 VB를 사용하여 txt로 저장하는 JSL 스크립트를 테스트할 수 있었습니다. 작동하며 필요에 따라 정보를 가져올 수 있습니다. 유일한 문제는 Excel 파일의 마지막 탭에 대해서만 수행된다는 것입니다.
내 Excel 파일에는 가져와야 하는 탭이 여러 개 있는데 모두 날짜 문제가 있습니다. JMP에서는 분석을 위해 모든 데이터를 단일 데이터 테이블로 연결합니다. 또한 이러한 Excel 파일을 여러 개 열고 모든 데이터를 하나로 합치려면 JSL을 수정해야 한다는 사실도 방금 알게 되었습니다. 복잡성 수준이 추가되었습니다.
불행히도 저는 여러 탭을 처리하는 내용을 작성할 만큼 VB에 익숙하지 않습니다. 하지만 제 동료가 있는데 그 사람들이 그 일을 하고 있어요.
문제가 해결되는지 확인하기 위해 JMP에서 기본 설정을 변경해 보았으나 해결되지 않았습니다. OS 날짜 형식을 독일(dmy)로 설정했는데도 여전히 설치 OS(영어)를 사용하고 날짜를 mdy로 읽어서 12보다 큰 날은 무시하는 버그가 있는 것 같습니다.
JSL 스크립트는 매우 유용합니다. 게시해 주셔서 감사합니다. 여러 탭을 처리하려면 VB 부분만 수정하면 됩니다. 그게 전부입니다.
Re: Excel 날짜 열의 강제 가져오기 형식감사해요 @gzmorgan0 , 특히 예제 가져오기 파일의 경우. 다음 주에 테스트해보고 제대로 작동하는지 확인할 수 있겠지만, 곧 도달할 수는 없습니다.
JMP 15의 새로운 "강제" 옵션을 기대해 보세요.
감사해요!,
DS
Re: Excel 날짜 열의 강제 가져오기 형식@가르텔 , 참고하세요 @briancorcoran JMP 15에는 더 많은 옵션이 있을 수 있다고 언급했습니다.
첨부된 스크립트는 Excel 시트를 탭으로 구분된 텍스트 파일로 저장한 다음 텍스트 파일을 JMP로 읽는 스크립트입니다.
JMP 가져오기 텍스트 기본값이 날짜를 텍스트로 읽는지 확인하기 위해 시스템 기본값(호주 및 독일)을 사용하여 텍스트 파일을 읽어볼 수 있습니다. 그렇지 않은 경우 모든 열의 이름을 지정하고 데이터 유형을 지정해야 합니다.
이 스크립트는 VBScript를 사용하므로 Mac에서는 작동하지 않을 수 있습니다.
스크립트는 "도움이 될 수 있는 경우"로 제공됩니다.
Re: Excel 날짜 열의 강제 가져오기 형식안녕하세요, JMPers 님,
호주도 "잘못된" 날짜 형식을 사용합니다
따라서 일은 월로 해석되고 >12는 형식 위반으로 인해 값이 누락됩니다. 이는 두 번째 줄에서 발생할 수 있습니다.운이 좋지 않으면 첫날 > 12가 파일에서 발생하여 눈치채지 못한 채 값이 누락될 수 있기 때문에 매우 실망스럽습니다. 경고도없이 JMP는 잘못된 날짜 형식을 읽었다고 판단합니다.
작동하게 만드는 두 가지가 있습니다.먼저 'Windows 특정' 아래의 JMP 기본 설정에서 '시스템 로케일 설정 대신 JMP 언어 사용...' 상자를 선택 해제합니다.JMP에서는 기본 날짜 형식을 설정할 수 있는 곳을 찾을 수 없으므로 이 플래그가 무엇을 가리키는지 잘 모르겠습니다.두 번째 단계는 이전 포스터에 표시된 것처럼 Windows 로캘 설정을 변경하는 것입니다. 하지만 JMP는 dd/mm/YYYY 설정을 좋아하지 않습니다. dd/MM/yy여야 합니다. 이유는 모르겠지만 적어도 작동합니다. 나를 위한.이것이 Windows 문제인지, 즉 Mac에 이 문제가 없는지 알 수 없습니다.저는 Windows 7 컴퓨터와 Windows 10 컴퓨터(JMP PRO 14.3 64비트)에서 JMP를 실행하지만 JMP에서는 Excel 가져오기가 가능했기 때문에 이 문제가 발생했습니다.
일부는 열을 텍스트로 읽을 것을 제안했습니다. JMP가 특정 열을 텍스트로 읽도록 강제하는 옵션이 표시되지 않습니다. 이것이 가능합니까?
또 다른 해결 방법은 데이터를 CSV 형식으로 가져오는 것입니다. JMP에서는 Excel과 달리 입력을 매우 세밀하게 제어할 수 있기 때문입니다.세 번째 옵션은 데이터베이스 인터페이스를 사용하여 Excel 파일을 읽는 것입니다.하지만 이를 위해서는 PC에 적절한 ODBC 설정이 필요하며 약간의 고통도 따릅니다.
JMP 참고 사항 - 잘못된 형식으로 인해 필드를 가져오지 못한 경우 JMP에서 경고나 오류 메시지를 보내면 매우 좋을 것입니다.Excel에서는 문자 필드로 변환되고 JMP에서는 자동으로 누락된 값으로 변환되는 숫자 필드에 * 또는 <를 추가하는 고객이 있습니다.JSL은 작업 자동화에 환상적이지만 이런 종류의 작업으로 인해 프로그램의 오류 방지가 매우 어렵습니다.
건배
군터
Re: Excel 날짜 열의 강제 가져오기 형식@SDF1 , 두 가지 제안이 있습니다.
- Run Program()을 통한 JSL은 VBSript와 같은 다른 프로그램을 실행할 수 있습니다.JSL을 Excel을 통해 Open teh 파일에 기록하고 열 형식을 텍스트로 지정할 수 있습니다(필요한 경우). 파일을 탭으로 구분된 텍스트로 저장합니다. Excel을 닫은 다음 열을 텍스트로 읽은 다음 변환할 수 있는 옵션이 있는 텍스트 파일을 읽습니다.
- Excel 파일을 데이터베이스로 사용할 수 있습니다. 제가 조금 읽어봤는데 독일 동료들이 보고 있는 문제는 데이터 유형에 대한 Excel 변환기 때문일 수 있습니다.아래는 Open Database()를 사용하기 위한 JSL이다. 약간의 준비 작업이 필요합니다. 독일 동료는 Excel용 DSN을 정의하고 동일한 이름을 사용해야 합니다.이제 모든 사람이 64비트 JMP와 64비트 MW Office를 갖고 있다면 꽤 쉽습니다. 32비트 MS Office를 사용하는 경우 해당 설정에 필요한 단계를 보내드릴 수 있습니다.IMEX=1 코드는 Excel에 혼합된 데이터 형식처럼 보이는 열이 있으면 이를 텍스트로 변환하도록 Excel에 지시합니다.
dt2 = Open Database( "DSN=Excel Files;
DBQ=c:/temp/ExcelDateBlog.xlsx;IMEX=1",
"SELECT * FROM [Sheet1$]",
"Result from XLS"
);
Excel 마법사에서 열 형식 지정을 허용하는 JMP 15까지는 텍스트 파일 작업이 더 쉬울 것이라고 생각합니다. 옵션 #1에 대한 도움/예가 필요하면 알려주십시오.
Re: Excel 날짜 열의 강제 가져오기 형식안녕 @briancorcoran ,
죄송합니다. 새 게시물 시작 부분에 시스템 세부 정보를 입력하는 것을 계속 잊어버렸습니다.
W7 엔터프라이즈, 64비트
JMP Pro 14.1.0(및 JMP 14.0.0)
저는 영어(미국) OS를 실행하고 있으며 W7 Enterprise를 실행하지만 OS를 독일어로 설정한 독일 동료를 위해 일부 자동화 코드를 작성하려고 합니다. 이와 같은 다른 프로젝트에서는 날짜가 잘못 읽히는 문제가 발생하지 않았습니다. 하지만 두 가지 다른 버전의 코드를 작성해야 합니다. 하나는 미국 동료용이고 다른 하나는 독일 동료용입니다. 일반 미국 OS에서는 날짜를 텍스트로 읽기 때문입니다. 그리고 @gzmorgan0 텍스트로 읽을 때 처리하고 변환하는 데 문제가 없다고 언급했습니다. 하지만 독일 동료들이 미국 컴퓨터에서 실행되도록 작성된 JSL 스크립트를 실행하려고 하면 제대로 작동하지 않기 때문에 독일어 OS에서 올바르게 실행되도록 코드를 변경해야 합니다.
독일 컴퓨터에서 실행하기 위한 코드를 작성하기 위해 OS의 지역/로컬 설정을 "독일어(독일)"로 변경합니다. 안타깝게도 JMP는 제가 가지고 있는 Excel 파일에서 날짜 설정을 올바르게 가져오지 못하는 것 같습니다.
Re: Excel 날짜 열의 강제 가져오기 형식고마워요 조지아. 가능한 버그를 조사하기 위해 이것을 보냈습니다.
브라이언
Re: Excel 날짜 열의 강제 가져오기 형식@SDF1 , 죄송합니다. 효과가 없었습니다.
독일이 아닌 JMP는 dd.mm.yyyy 형식을 텍스트로 해석했습니다.
다음 제안 중 하나를 시도해 볼 수 있습니다.
- 해당 날짜 열을 텍스트 열로 만듭니다.
- 가져오기 미리 보기 또는 스크립트를 사용하여 형식을 설정하고 문자로 만들 수 있는 텍스트 파일로 데이터를 저장합니다.
내부 버그가 있는 것 같아요. Brian에게 보낸 마지막 게시물을 참조하세요.
Re: Excel 날짜 열의 강제 가져오기 형식@briancorcoran , 내가 의지하는 걸 봤어? @SDF1 ?
- Excel 시트에서 텍스트/문자로 읽었습니다.
- 그런 다음 칼럼 메시지를 보냈습니다.
dt:Date << Data Type (Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "ddmmyyyy" ));
- 설명된 것과 동일한 동작 @SDF1 발생하기도 했습니다.Ir은 첫 번째 데이터를 읽은 다음 2019년 2월 13일에 그 값이 비어 있었습니다. 이는 Excel 시트와는 아무런 관련이 없습니다. JMP는 날짜 열을 텍스트로 읽습니다.
- 그러나 2개의 변환이 없는 아래 열 메시지를 사용하면 입력 형식과 형식이 동일하므로 데이터가 올바르게 변환됩니다.
dt:Date << Data Type (Numeric,
"Continuous",
Format( "ddmmyyyy", 12 ),
Input Format( "ddmmyyyy" ));
- 그런 다음 이전 열의 Data Type() 메시지를 사용하면 선택한 형식이 괜찮습니다.
내 답변에 명시된 바와 같이 이는 매우 예상치 못한 동작이었고 나에게는 버그인 것 같습니다. JMP Pro 14.3을 사용하고 있습니다.
Re: Excel 날짜 열의 강제 가져오기 형식어떤 버전의 JMP를 사용하고 있나요?
브라이언
Re: Excel 날짜 열의 강제 가져오기 형식안녕하세요 브라이언( @briancorcoran ),
예, 실제로 열은 독일 스타일 dmy 형식을 사용하여 "날짜"로 설정되어 있습니다. Excel 열 속성 창과 설정에 대한 스크린샷이 포함된 이 스레드의 이전 게시물을 확인하세요. 내 시스템 설정도 그렇습니다. 아래를 참조하십시오.
감사해요!,
DS

Re: Excel 날짜 열의 강제 가져오기 형식안녕하세요 DS님,
JMP는 Excel의 열에 특별히 적용되는 형식을 존중해야 합니다.Excel로 이동하여 셀 서식 대화 상자를 사용하여 열 유형을 날짜로 명시적으로 설정한 다음 독일 dmy와 같은 유럽 형식으로 설정하셨나요?이 경우 JMP는 데이터를 올바르게 가져와야 합니다.
브라이언
Re: Excel 날짜 열의 강제 가져오기 형식업데이트:
Excel 파일을 조금 더 자세히 조사했는데 데이터를 가져오려고 할 때 모든 탭에서 이 실수를 일으키는 공통적인 점은 날짜 열을 읽고 2019년 2월 12일(2019년 2월 12일) 날짜 열을 읽을 때입니다. ) ~ 2019년 2월 13일(2019년 2월 13일)까지.
내 이론은 다음과 같습니다. JMP가 12일 이전 날짜와 이후 날짜의 형식을 혼동하고 있는 것 같습니다. 원래 기간은 2019년 1월 2일부터 2019년 2월 28일(2019년 1월 2일부터 2019년 2월 28일)입니다.
JMP가 날짜 열을 읽으면서 실제로 2019년 1월 2일을 2019년 2월 1일로 해석하는 것처럼 보입니다. 따라서 2019년 2월 12일에 도달하면 실제로 2019년 12월 2일로 날짜가 읽혀집니다. 결과적으로 2019년 2월 13일(2019년 2월 13일)에 도달하면 13번째 달이 없기 때문에 날짜를 읽는 방법을 알 수 없습니다. JMP의 열 속성은 항상 "연속" 모델링 유형, "dmy" 형식 및 "dmy" 입력 형식으로 표시됩니다. 가져오기를 두 섹션으로 나누지 않는 한 이 작업이 수행됩니다.
가져오기를 2019년 1월 2일부터 2019년 12월 12일까지, 2019년 2월 13일부터 2019년 2월 28일까지 두 부분으로 분할하면 JMP는 데이터를 적절하게 가져오고 열 형식을 적절하게 할당합니다. 그런 다음 두 개를 올바른 데이터 테이블로 연결할 수 있습니다. 원래 게시물에서는 왜 작동하지 않았는지 모르겠지만 이런 식으로 작동할 수 있습니다.
또한 JMP 내에서 설정한 기본 설정에 따라 데이터를 올바르게 가져오는지 여부가 달라지지 않는다는 것도 확인할 수 있습니다.
원본 파일이 12/13일 날짜 변경 위치(행)를 변경할 수 있으므로 이는 자동화에 그다지 도움이 되지 않습니다. 그래도 분할 경로를 통해 작동하도록 해야 할 수도 있습니다. 이것이 JMP의 버그라면 수정이 가능하면 좋을 것 같습니다.
Re: Excel 날짜 열의 강제 가져오기 형식안녕 @gzmorgan0 ,
귀하의 생각과 의견에 감사드립니다. 불행하게도 이 접근 방식도 작동하지 않습니다. 문제는 JMP가 날짜 형식을 가져오기도 전에 날짜 형식을 잘못 읽었기 때문에 발생합니다. 스크립트를 실행하거나 마법사 GUI를 통해 실행하려고 하면 JMP는 날짜를 dmy 또는 mdy 형식인데 다른 형식으로 잘못 분류합니다.
날짜 형식의 다양한 변형에 맞게 코드를 수정해도 문제가 해결되지 않습니다. 단순히 혼합 형식을 가져오지 않고 한 종류 또는 다른 종류만 연속으로 처리하고 다른 종류는 무시합니다. JSL 코드는 이를 명목 데이터 유형으로 가져오지 않으며 연속형으로 바로 입력됩니다.
감사해요!,
DS
Re: Excel 날짜 열의 강제 가져오기 형식안녕 @briancorcoran ,
의견을 보내주셔서 감사합니다. 귀하의 제안을 시도해 보았지만 불행히도 효과가 없었습니다. "열 감지를 제한"하고 모든 행을 표시하는 미리보기 창에서도 JMP는 형식을 읽는 데 문제가 있습니다. 처음 205행은 잘 읽혀지고, 어떤 이유로든 형식이 전환되는 206행에 있습니다.
이해가 되지 않는 것은 Excel 내의 서식이 한 행에서 다음 행으로 변경되지 않는다는 것입니다. 그렇다면 JMP가 이를 다르게 읽을 수 있는 이유를 이해할 수 있습니다. 모든 셀은 Excel에서 "Date" dd.mm.yyyy 형식으로 지정됩니다. 가져오는 다음 탭에서도 동일한 일이 발생하지만 52~53행에서 발생합니다. 원래 Excel 파일 생성에서 모든 테이블의 동일한 행에 날짜를 다르게 저장하는 결함이 있었지만 JMP가 데이터를 읽을 때 탭에서 탭까지 동일한 위치에 있지 않은 문제가 있었는지 이해할 수 있습니다.
내가 볼 수 있는 Excel 측의 유일한 형식 지정 사항은 "날짜" 범주의 "유형" 옵션이 *로 시작한다는 것입니다. 아래 첨부된 이미지를 참조하세요. 하지만 이는 OS 설정에 따라 업데이트되어야 합니다. 열의 모든 날짜 형식은 이러한 방식으로 지정되므로 JMP에서 하나에 문제가 있으면 모든 날짜에도 문제가 있어야 합니다.
나는 노력할 것이다 @gzmorgan0 가져오기에 대한 님의 제안을 보고 그것이 작동하는지 확인하세요.
특히 프로세스 자동화를 위한 JSL 코드를 작성하는 경우에는 가져오는 동안 JMP가 특정 형식 지정 유형을 강제하도록 하는 것이 좋습니다.

Re: Excel 날짜 열의 강제 가져오기 형식Excel 미리 보기는 성능상의 이유로 처음 100개 행을 확인하여 미리 보기에 대한 데이터 형식을 결정합니다.실제 가져오기 작업 중에 JMP는 모든 행을 살펴봅니다.100행 이후에 다른 결론으로 이어지는 데이터가 있으면 다른 결과가 나올 수 있습니다.가져오기 시 표시되는 내용을 생성하기 위해 미리 보기에서 모든 행을 확인하려면 UI의 미리 보기 창 새로 고침에서 "모든 행 표시" 옵션을 선택할 수 있습니다.가져오기에서 데이터를 읽을 때 처음 100개 행만 확인하고 미리보기 동작을 생성하려면 가져오기 대화 상자의 두 번째 창에 있는 "고급 옵션"으로 이동하여 "열 유형 감지 제한"을 선택하세요. .
JMP 15에는 개별 열의 숫자 형식 지정 유형을 사용자가 선택하는 대로 적용하는 기능이 도입되었습니다.
브라이언 코코란
JMP 개발
Re: Excel 날짜 열의 강제 가져오기 형식흠, @SDF1 , 버그를 발견했을 수도 있습니다.
내가 취하는 접근 방식은 데이터를 읽고 문자열로 만든 다음 변환하는 것입니다. 그러나 마지막 Data Type() 메시지만 사용하려고 하면 설명한 것과 동일한 동작이 나타납니다. 동일한 informat 및 format 문을 유지하면 문제가 나타나지 않습니다.변환이 완료되면 선택한 형식으로 설정하세요.
Names default to here(1);
dt = Open(
"C:\temp\ExcelDateBlog.xlsx",
Worksheets( "Sheet1" ),
Use for all sheets( 0 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
wait(0); //change to 2 seconds to see that the data is read in as text
dt:Date << Data Type (Numeric,
"Continuous",
Format( "ddmmyyyy", 12 ),
Input Format( "ddmmyyyy" ));
dt:Date << Data Type (Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "ddmmyyyy" ));
도움이 되네요.